基于Cloudflare内网穿透实现自建图床基于Cloudflare内网穿+本地部署MinIO等对象存储服务,结合Pic - 掘金

同步来源:树洞剪藏 源站剪藏 ID:285 原文地址:https://juejin.cn/post/7305983027766099978?searchId=202412090850499617D0D11E0CB7C50F31
基于Cloudflare内网穿透实现自建图床基于Cloudflare内网穿+本地部署MinIO等对象存储服务,结合Pic - 掘金
set 限制解除
首页
BOT
沸点
课程
直播
活动 AI刷题 NEW 商城 APP 插件
创作者中心
会员
登录
注册
基于Cloudflare内网穿透实现自建图床
入秋的大橘
2023-11-27
2,014
阅读3分钟
图床的选择
厂商 收费 域名 七牛云Kodo 每月10G免费流量【HTTPS流量不包括在内】,按量收费,资源包 未备案域名只支持海外节点 阿里云OSS 按量收费,资源包 未备案域名仅支持海外节点【有香港节点】 腾讯COS 按量收费,资源包 未备案域名仅支持海外节点【有香港节点】
按量收费的服务都存在一个风险点,或者说需要注意的一个点就是流量。当自己站点的流量较大时,存储空间的支出相对CDN的流量支出可谓是九牛一毛。存在恶意攻击时支出更不可控。虽然云厂商的服务开箱即用,但是自建的服务可在支出上省下一笔费用。
自建图床的选择
自建图床的选择也有很多, Github+DNS转发 、 SMMS 、 Lsky Pro 等等都可行,各有各的优势,这里选择MinIO作为自建图床的基础来做演示。
安装MinIO
基于docker compose安装
yaml
代码解读 复制代码 version: '3.9' services: minio: command: 'server /data --console-address ":9001"' restart: always image: quay.io/minio/minio container_name: minio environment:
- MINIO_ROOT_USER=minio
- MINIO_ROOT_PASSWORD=miniopwd volumes:
- './data:/data' ports:
- '9001:9001'
- '9000:9000' deploy: resources: limits: memory: 512M
--console-address ":9001" :配置MinIO的控制台访问端口,和下面端口映射的 - '9001:9001' 对应,可按需修改。
MINIO_ROOT_USER :MinIO控制台登录账号
MINIO_ROOT_PASSWORD :MinIO控制台登录密码
启动MinIO
docker-compose up -d
通过 IP:控制台端口进行访问
测试MinIO功能
使用配置的账号密码登录控制台
创建一个新的存储桶
配置存储桶的访问权限,当前为测试演示开启public,使用时按实际访问权限填写,不懂配置可百度+B站
上传测试图片并访问 访问路径为: IP:API接口/bucket/source ,以当前示例为: http://10.0.1.131:9000/test/ccfdfe74880411ebb6edd017c2d2eca2.jpg
结合Cloudflare内网穿透功能,实现外网访问
准备一个域名,注册好Cloudflare账号
域名选择很多,阿里万网、腾讯DNSPod都可以。这里以阿里云域名为例。
将域名的DNS解析托管到Cloudflare
在Cloudflare的管理页面选择 添加站点 ,按流程添加域名信息。
选择 Free 计划
这里获得两个 DNS服务器 地址
将Cloudflare提供的DNS服务器地址,替换掉域名原DNS解析。
阿里云修改流程:控制台 - 域名 - 域名列表 - 选择需要修改的域名 - 详细信息中选择 DNS修改 ,将获得的两个DNS解析服务器更换。预计需要几分钟到一个小时不等的时间完成更新
回到Cloudflare界面,当域名变为有效状态则DNS服务器修改成功。
配置Cloudflare 内网穿透
在控制台首页选择 Zero Trust ,在Zero Trust界面中选择:Access - Tunnels - Create a tunnel,创建一个新的内网穿透通道。
输入通道名:
这里有多种Client部署方式,我们选择Docker,将命令复制下来修改为后台运行并在可访问到MinIO的节点上部署。
arduino
代码解读 复制代码 docker run -d cloudflare/cloudflared:latest tunnel --no-autoupdate run --token 修改为自己的token
部署成功后,这里会显示Client连接:
继续下一步,填写具体的穿透服务。
subdomian :二级域名 Domian :转入Cloudflare托管的域名 Service :填写目标服务地址。 注意:此时要代理的是MinIO的API端口
创建完成后,tunnels列表显示:
此时将刚刚访问图片的IP+端口替换为代理域名: http://10.0.1.131:9000/test/ccfdfe74880411ebb6edd017c2d2eca2.jpg
https://代理域名/test/ccfdfe74880411ebb6edd017c2d2eca2.jpg
自建图床+外网访问已完成。
标签: 服务器
评论 0
0 / 1000
标点符号、链接等不计算在有效字数内
Ctrl + Enter
发送
登录 / 注册 即可发布评论!
暂无评论数据
入秋的大橘
Java攻城狮
22
文章
16k
阅读
31
粉丝
关注
已关注
私信
目录
收起
图床的选择
自建图床的选择
安装MinIO
基于docker compose安装
启动MinIO
测试MinIO功能
结合Cloudflare内网穿透功能,实现外网访问
准备一个域名,注册好Cloudflare账号
将域名的DNS解析托管到Cloudflare
配置Cloudflare 内网穿透
精选内容
Linux服务器安装Linux宝塔面板并部署wordpress网站以及雷池WAF,设置禁止使用IP地址访问网站,只能使用域名访问网站
星如雨落
· 16阅读 · 1点赞 不敢相信,Nginx 还能这么玩?
程序员鱼皮
· 8.7k阅读 · 200点赞 穿越防火墙的秘籍,打造个人专属内网穿透网络
谢小飞
· 159阅读 · 2点赞 网易云音乐故障 2 小时,这次到底谁背锅?(今天记得领补偿)
程序员鱼皮
· 20k阅读 · 94点赞 一文打通 Ghost 博客系统的邮件服务
ENG八戒
· 29阅读 · 1点赞
找对属于你的技术圈子 回复「进群」加入官方微信群
为你推荐
写了个PicGo私有化图床插件
zhaoolee
2年前
879
点赞
评论
后端
快速搭建简单图床 - 远程访问本地搭建的EasyImage图床【内网穿透】
probezy
1年前
316
点赞
评论
前端
【搭建私人图床】使用LightPicture开源搭建图片管理系统并远程访问——“cpolar内网穿透”
认真学习的小雅兰
1年前
30
1
评论
前端
【体验报告】Serverless 技术初体验,使用Cloudflare Pages开发了一个免费开源的自建图床程序,无需服务器,支持图片管理,兼容 picgo
用户1405142835055
1年前
915
2
评论
Serverless
2024年最全的图床集合(国内外,站长必备)
Forget660
10月前
1.3k
点赞
评论
前端
基于ZeroTier实现内网穿透、异地组网
大刚测试开发实战
2年前
9.8k
20
10
网络协议
基于腾讯云EdgeOne的自适应webp转换
Liueic
4月前
54
点赞
评论
云计算
CloudFlare R2 个人免费图床搭建教程
MatrixWave
1年前
1.2k
1
评论
笔记
【远程办公】5分钟实现内网穿透
冷冷zz
4年前
13k
139
11
Java
使用 TypeScript 开发你的第一个 Telegram 机器人(2)- 将 Telegram 做为 OSS 对象存储服务
悖论BeilunYang
1月前
94
2
评论
TypeScript
机器人
Serverless
Cloudflare R2 - 免费图床
LaughingZhu
3月前
57
1
评论
前端
CloudFlare免费内网穿透
小飞博客
9月前
282
点赞
评论
后端
Cloudflare浑身都是宝,普通用户能白嫖多少服务?盘点cloudflare的免费功能
技术爬爬虾
5月前
285
点赞
评论
DNS
CDN
自建内网穿透服务器 | Coder 小站
三金得鑫
8月前
1.7k
11
3
网络协议
Docker
容器
Shopify App 开发:本地开发配置自定义域名
hauk0101
2月前
219
点赞
评论
前端
APP内打开
登录掘金领取礼包
更多登录后权益等你解锁 登录 / 注册
沉浸阅读