SpringBoot+Docker

SpringBoot+Docker

参考文档:简单实践

实现 SpringBoot 程序打成镜像推送到远程 docker 服务并进行生命周期管理

连接远程服务器上的 docker

通过 ssh

在 IDEA 上,可以通过 ssh 连接连接上远程服务器上的 docker,但是不知道阿里云服务器为什么无法实现,报错如下:

Cannot connect: comintellij.docker.agent.ApiTaskException:org.apache.hc.core5.http.NoHttpResponseException: 127.0.0.1:80 failed to respond

相关讨论贴:Remote docker via ssh fails to respond

通过 tcp

默认 docker 已经安装完毕

配置 docker 远程连接端口:

vim /usr/lib/systemd/system/docker.service

ExecStart 这一行的最后添加 -H tcp://0.0.0.0:2375

然后重启 docker

systemctl daemon-reload
systemctl restart docker

如果服务器的防火墙是开启的,则还需要开启防火墙:

firewall-cmd --zone=public --add-port=2375/tcp --permanent

如果你用的是阿里云的服务器,还需要在防火墙菜单中添加规则:

最后在 IDEA 中连接 docker,Engine API URL 为 tcp://xiashuo.xyz:2375


TODO

部署是部署上来了,但是无法通过 IDEA 中的按钮让容器停下来啊 TODO

同时在服务器上,执行 dockers ps -a,也有问题:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

TODO