一次docker web服务的奇怪问题
背景:在公司是devops。开发时,使用docker打包web服务,莫名其妙的运行就直接退出。
docker web服务启动就直接退出
sudo docker run -it –rm liangjf/web_comment
执行sudo docker ps
, 没发现有容器id
这样就不能用sudo docker logs
-
1、以为是端口号重复了,发现不是
-
2、本地编译打进镜像,在容器编译打进镜像,都是启动就退出,排除打镜像问题
-
3、突然发现,容器启动过,在
sudo docker ps -a
肯定是有记录的,除非删除了容器。,看回启动容器命令sudo docker run -it --rm
,我启动后直接把容器删除了,所以没有留下现场 -
4、更新启动容器命令
sudo docker run -it liangjf/web_comment
,然后sudo docker logs <container id>
查看容器启动log,发现有log了,报错 172.16.7.16:7070。原来我在web服务里写死了ip地址,因为容器在启动时并非在docker桥接网络里,因此绑定ip地址失败,启动直接退出。只是一开始因为–rm参数,隐藏掉这个报错而已 -
5、修改程序的
172.16.7.16:7070
为:7070,重新打镜像,启动,ok