远程访问Docker容器全攻略
·
准备工作:安装必要工具
确保本地计算机已安装Docker和cpolar工具。Docker用于容器化应用部署,cpolar提供内网穿透功能。Windows用户可通过官网下载Docker Desktop,Linux用户使用包管理器安装(如apt-get install docker.io)。cpolar可通过官网下载对应平台的客户端。
配置Docker容器
创建需要远程访问的服务容器。例如部署一个Web应用,使用Nginx镜像:
docker run -d --name remote-nginx -p 80:80 nginx
验证容器运行状态:
docker ps
设置cpolar隧道
在cpolar配置文件中添加HTTP隧道,指向Docker容器的本地端口。编辑cpolar.yml:
tunnels:
remote-office:
addr: 80
proto: http
region: hk
启动cpolar服务:
cpolar start -config cpolar.yml
获取公网访问地址
cpolar启动后会生成随机域名(如https://a1b2c3d4.cpolar.cn)。在输出日志中查找Forwarding字段,或通过Web控制台查看分配的公网地址。
安全加固措施
为隧道添加基础认证:
htpasswd -c ./passwd user1
在cpolar配置中增加认证参数:
auth:
username: user1
password: $2y$05$XXXXXXXXXXXX
测试远程连接
通过另一台设备访问生成的公网域名,应能看见Nginx默认页面。若配置了认证,需输入用户名密码。
高级配置:固定子域名
在cpolar官网预留二级域名(如office.cpolar.cn),修改配置:
tunnels:
remote-office:
addr: 80
proto: http
subdomain: office
防火墙设置
确保本地防火墙放行cpolar的端口(默认4040)。Linux系统可能需要:
sudo ufw allow 4040/tcp
自动化管理
创建systemd服务实现开机自启:
[Unit]
Description=Cpolar Service
After=network.target
[Service]
ExecStart=/usr/local/bin/cpolar start -config /etc/cpolar.yml
Restart=always
[Install]
WantedBy=multi-user.target
更多推荐
所有评论(0)