以下是Ubuntu Docker远程管理的配置步骤及方法:
修改Docker配置文件
/etc/docker/daemon.json(若不存在则创建),添加以下内容:{
"hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375"]
}
(0.0.0.0可替换为指定IP,生产环境建议用TLS加密,端口2376)。/lib/systemd/system/docker.service,在ExecStart行添加-H tcp://0.0.0.0:2375。重启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
配置防火墙
sudo ufw allow 2375/tcp # 允许TCP端口通信
sudo ufw reload
使用Docker CLI
-H参数指定远程地址:docker -H tcp://<远程IP>:2375 ps # 查看容器
docker -H tcp://<远程IP>:2375 exec -it <容器ID> /bin/bash # 进入容器
使用环境变量
export DOCKER_HOST=tcp://<远程IP>:2375
docker ps # 直接使用docker命令
通过Docker Contexts
docker context create remote --docker "host=tcp://<远程IP>:2375"
docker context use remote
docker ps # 切换上下文后操作
使用SSH隧道(加密推荐)
ssh -L 2375:localhost:2375 user@远程IP -N # 建立本地2375端口到远程的隧道
export DOCKER_HOST=tcp://localhost:2375
docker ps # 通过隧道访问
配置完成后,可通过docker -H tcp://<远程IP>:端口 info测试连接是否成功。