在Ubuntu下通过Docker部署Cloudflared Tunnel服务器

嘿,朋友们,今天咱们来探讨如何在Ubuntu上通过Docker部署Cloudflared Tunnel服务器。想在互联网的海洋中安全航行?Cloudflared可以是你的小船,带你避开风浪!

Docker与Cloudflared Tunnel简介

Docker是一个开源的容器化平台,允许你将应用及其依赖打包成独立的容器,轻松在不同环境中运行。它的灵活性和可移植性使得开发者能够快速部署和管理应用,特别适合现代云计算环境。

Cloudflared Tunnel是Cloudflare提供的一个工具,允许用户通过Cloudflare的网络安全地访问本地服务。它能够将你的本地应用安全地暴露到公网上,同时保护你的服务免受DDoS攻击和恶意访问。使用Cloudflared,你可以简化网络配置,提升安全性,真正实现"隐形"上网。

在Ubuntu下通过Docker部署Cloudflared Tunnel服务器

步骤 1:安装Docker

确保你的Ubuntu系统上安装了Docker。可以使用以下命令进行安装:

复制代码
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker

步骤 2:创建Cloudflared配置文件

在你的主目录下创建一个文件夹来存放Cloudflared的配置:

复制代码
mkdir ~/cloudflared
cd ~/cloudflared

然后创建一个名为config.yml的文件,内容如下:

复制代码
tunnel: your-tunnel-id
credentials-file: /etc/cloudflared/your-tunnel-id.json

ingress:
  - hostname: yourdomain.com
    service: http://localhost:8080
  - service: http_status:404

参数解析

  • tunnel:你的Cloudflare隧道ID。
  • credentials-file:Cloudflare提供的凭证文件路径。
  • ingress:定义了流量的入口规则。hostname是你希望通过Cloudflare访问的域名,service是本地服务的地址。

步骤 3:拉取Cloudflared镜像

现在,我们来拉取Cloudflared的Docker镜像:

复制代码
sudo docker pull cloudflare/cloudflared:latest

步骤 4:运行Cloudflared Tunnel

使用以下命令启动Cloudflared Tunnel:

复制代码
sudo docker run -d --name cloudflared \
  -v ~/cloudflared/config.yml:/etc/cloudflared/config.yml \
  -v ~/cloudflared/your-tunnel-id.json:/etc/cloudflared/your-tunnel-id.json \
  cloudflare/cloudflared:latest tunnel run

参数解析

  • -d:让容器在后台运行。
  • --name cloudflared:给容器命名为cloudflared
  • -v:将本地配置文件挂载到容器内的对应路径。

步骤 5:验证Cloudflared Tunnel

要验证Cloudflared Tunnel是否成功运行,可以使用以下命令查看容器状态:

复制代码
sudo docker ps

如果看到cloudflared在运行,那就成功了!你可以通过访问http://yourdomain.com来测试是否能够正常连接到本地服务。

步骤 6:停止和删除容器

如果你需要停止Cloudflared,可以使用:

复制代码
sudo docker stop cloudflared

要删除容器,可以使用:

复制代码
sudo docker rm cloudflared

总结

通过这些步骤,你就可以在Ubuntu上通过Docker轻松部署Cloudflared Tunnel服务器,享受安全、便捷的网络连接。如果在部署过程中遇到问题,别忘了查阅官方文档或社区资源。祝你好运,安全上网!

相关推荐
tg_xianheyun1 小时前
CDN节点分布如何影响网页加载速度和用户体验
服务器·cdn加速·全球访问优化
lsh曙光1 小时前
延时at指令和定时cron指令
linux·服务器·网络
夏殇之殁3 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
我不管我就要叫小猪3 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘4 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
泡沫冰@4 小时前
ECS 的介绍和使用
linux·服务器·网络
土星云SaturnCloud4 小时前
抽水蓄能设备智慧运营:基于土星云边缘计算实现机组全生命周期预测性维护
服务器·人工智能·ai·边缘计算
hyf3266335 小时前
泛程序:从零开始搭建稳定程序项目框架
运维·服务器·爬虫·百度·seo
NiceCloud喜云6 小时前
海外云服务器怎么选?适用场景、价格和避坑经验总结
运维·服务器
小小的木头人8 小时前
Ubuntu 使用 udev + systemd + UUID 实现 USB 硬盘自动挂载
linux·运维·ubuntu