在现代互联网中,安全和隐私是至关重要的。Cloudflared Tunnel 是 Cloudflare 提供的一种安全隧道解决方案,可以帮助你安全地将本地服务暴露到互联网,而无需暴露你的服务器 IP 地址。通过 Docker 部署 Cloudflared Tunnel,不仅简化了安装过程,还能轻松管理和更新服务。
简要介绍
Docker 是一款开源的容器化平台,它允许开发者将应用及其依赖打包成一个标准化的单元,称为容器。容器在任何环境中都能快速部署,确保应用的一致性和可移植性。
Cloudflared 是 Cloudflare 提供的一个命令行工具,用于创建与 Cloudflare 网络的安全连接。通过 Cloudflared Tunnel,你可以将本地服务通过 Cloudflare 安全地暴露给互联网,保护你的服务器不被直接访问。
在 Ubuntu 下通过 Docker 部署 Cloudflared Tunnel 的步骤
步骤 1: 安装 Docker
如果你的系统还没有安装 Docker,使用以下命令进行安装:
sudo apt update
sudo apt install docker.io -y
sudo systemctl start docker
sudo systemctl enable docker
步骤 2: 拉取 Cloudflared 镜像
使用以下命令拉取 Cloudflared 的 Docker 镜像:
sudo docker pull cloudflare/cloudflared
步骤 3: 创建配置文件
在你的主目录下创建一个配置文件 config.yml
,内容如下:
tunnel: <YOUR_TUNNEL_ID>
credentials-file: /etc/cloudflared/<YOUR_TUNNEL_ID>.json
ingress:
- hostname: <YOUR_HOSTNAME>
service: http://localhost:<YOUR_LOCAL_SERVICE_PORT>
- service: http_status:404
参数说明:
<YOUR_TUNNEL_ID>
: 你的 Cloudflare 隧道 ID,可以在 Cloudflare 控制面板找到。<YOUR_HOSTNAME>
: 你希望通过 Cloudflare 访问的域名。<YOUR_LOCAL_SERVICE_PORT>
: 本地服务的端口,例如 8080。
步骤 4: 运行 Cloudflared Tunnel
使用以下命令运行 Cloudflared Tunnel:
sudo docker run -d --name cloudflared \
-v /etc/cloudflared:/etc/cloudflared \
cloudflare/cloudflared tunnel --config /etc/cloudflared/config.yml run
步骤 5: 验证服务
确保 Cloudflared Tunnel 正在运行,可以使用以下命令查看状态:
sudo docker logs cloudflared
如果一切正常,你应该能够通过你的域名访问本地服务。
总结
通过 Docker 部署 Cloudflared Tunnel 是一种高效且安全的方法,将你的本地服务公开到互联网。只需几个简单的步骤,你就能享受到 Cloudflare 的强大保护,确保你的应用安全无虞。别忘了定期更新 Docker 镜像和 Cloudflared,保持服务的安全性和稳定性。