开启 Docker Tcp 连接
修改 Docker 启动参数
shell
sudo vi /lib/systemd/system/docker.service
shell
sudo vi /etc/systemd/system/docker.service.d/override.conf
shell
systemctl edit docker
添加 Tcp 监听
在原有的启动参数中新增 tcp 监听
js
[Service]
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H fd:// --containerd=/run/containerd/containerd.sock
开启 TLS
DANGER
处于公网环境时,开启 Tcp 连接时必须开启 TLS
生成证书
shell
curl -sSL https://dpanel.cc/quick.sh -o quick.sh && bash quick.sh
shell
https://docs.docker.com/engine/security/protect-access/
证书文件
名称 | 描述 |
---|---|
ca.pem | 添加多服务端开启 TLS 上传证书 |
cert.pem | -- |
key.pem | -- |
ca.pem | Docker 配置 TLS 时关联证书 |
server-cert.pem | -- |
server-key.pem | -- |
修改 Docker 启动参数
js
[Service]
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=
ExecStart=/usr/bin/dockerd --tlsverify --tlscacert=/root/docker-ca/ca.pem --tlscert=/root/docker-ca/server-cert.pem --tlskey=/root/docker-ca/server-key.pem -H tcp://0.0.0.0:2376 -H fd:// --containerd=/run/containerd/containerd.sock
重载配置&重启服务
shell
sudo sh -c "systemctl daemon-reload && systemctl restart docker"