Docker容器开机自动启动(在宿主机重启后或者Docker服务重启后)

一、环境介绍
系统版本:CentOS6.7 X64
内核版本:2.6.32-573.18.1.el6.x86_64


二、测试过程
使用在Docker run的时候使用--restart参数来设置。

no - container:不重启
on-failure - container:退出状态非0时重启
always:始终重启

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@docker ~] # docker run -i -t -d --name centos_aways --restart=always centos
e278cabec91e36f5582d92ba3ddb95ac17a0c2c59d8cdcc60791a28075e8abce
[root@docker ~] # docker ps -l
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
e278cabec91e        centos               "/bin/bash"          5 seconds ago       Up 4 seconds   
[root@docker ~] # init 6
[root@docker ~] # docker ps -l
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
e278cabec91e        centos               "/bin/bash"          3 minutes ago       Up About a minute
 
Docker服务重启后,查看添加了“--restart=always”参数的容器能否自动启动
[root@docker ~] # /etc/init.d/docker stop
Stopping docker:                                           [  OK  ]
[root@docker ~] # /etc/init.d/docker start
Starting docker:                                      [  OK  ]
[root@docker ~] # docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
14caa9ab03a9        dockerui /dockerui    "/dockerui"          11 minutes ago      Up 3 seconds        0.0.0.0:9000->9000 /tcp    dockerui_qinwen     
e278cabec91e        centos               "/bin/bash"          About an hour ago   Up 3 seconds                                 centos_aways

 

三、注意事项:
1.用docker自带的--link把多个容器链接在一起,有重启或升级的问题,比如很多容器都依赖于 db 这个容器,然后db容器重启了,重启时docker分配的ip会变,导致其他依赖于db的容器都要重启。

2.--link 链接的容器还有启动顺序的问题, 需要先启动db容器再启动其他依赖于db的容器, 这样导致 --link和--restart=always 不能一起用, 如果一起用会发现宿主机重启了, docker容器并没有全部重启,
3.因为这时候docker容器是同时被启动的,并不知道启动顺序。 最后决定不用 --link 链接容器了。










本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1743902,如需转载请自行联系原作者
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/508607

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。