Restart policy:
Restart policy(重启的策略)在使用docker run启动容器时通过—restart标志指定, 这个标志由多个值可选, 不同的值有不同的行为:
–restart具体参数值详细信息:
no- 容器退出时, 不重启容器
on-failure – 容器发生error退出(容器退出状态不为0)重启容器, 可以指定重启的最大次数.
always – 在容器已经stop掉或者docker stoped/restarted的时候才重启容器, 手动stop的不算.
unless-stopped 在容器已经stop掉或者docker stoped/restarted的时候才重启容器
还可以在使用on – failure策略时, 指定docker将尝试重新启动容器的最大次数, 默认docker将尝试永远重新启动容器
sudo docker run –restart=on-failure:10 redis
Docker容器的自启动:
\1. 未创建的容器: docker run –restart always –name storage -d delron/fastdfs
\2. 已创建的容器: docker update –restart always storage/容器ID
\3. 创建容器
![img](file:///C:/Users/WANGHU~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg) sudo docker run -dti --name storage --network=host -e TRACKER_SERVER=192.168.47.129:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage![img](file:///C:/Users/WANGHU~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg)
sudo docker run -dit –name tracker –network=host -v /var/fdfs/tracker:/var/fdfs delron/fastdfs
sudo docker run [option] 镜像名 [向启动容器中传入的命令]
常用可选参数说明:
* -i 表示以《交互模式》运行容器。
* -t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
* --name 为创建的容器命名。
* -v 表示目录映射关系,即宿主机目录:容器中目录。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
* -d 会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器)。
* -p 表示端口映射,即宿主机端口:容器中端口。
* --network=host 表示将主机的网络环境映射到容器中,使容器的网络与主机相同。
sudo service docker restart
神奇的storage:
sudo docker run -dti --name storage --restart=always --network=host -e
TRACKER_SERVER=192.168.47.129:22122 -v /var/fdfs/storage:/var/fdfs storage delron/fastdfs -c “while true; do echo hello world; sleep 1; done”