书接上回~ 上回说到hello world,这次说下对容器的简单操作!
容器命名:
sudo docker run --name my_container –i –t Ubuntu /bin/bash
--name :创建一个容器名为 my_container的容器
重新启动容器:
sudo docker start b6b3e2ea4cef
sudo docker start my_container
第一种方式是根据容器的id启动容器,第二种是根据容器名启动容器,查看容器的id和名字:
sudo docker ps -a
附着到容器上:
sudo docker attach b6b3e2ea4cef
sudo docker attach my_container
Docker容器重新启动的时候,会沿用docker run的命令是指定的参数运行,我可以使用命令重新附着到改容器的会话上。
创建守护式容器:
sudo docker run --name daemon_dave -d ubuntu /bin/sh -c "while true;do echo hello world;sleep 1;done"
创建守护式容器,并在容器中执行一个while循环,打印hello world
可以通过命令查看日志
sudo docker logs daemon_dave
或者
sudo docker logs --tail 0 -f daemon_dave
查看容器内部进程:
sudo docker top daemon_dave
在容器内部运行进程:
sudo docker exec -d deamon_dave touch /home/new_file
-d 表面运行一个后台进程,执行命令,创建一个文件
或者可以启动一个如shell的交互式任务:
sudo docker exec -t -i daemon_dave /bin/bash
停止守护式进程:
sudo docker stop daemon_dave(或者id)
自动重启容器:
通过 –-restart标志,可以是docker容器在发生错误停止后自动重启
sudo docker run -–restart=always –name container –d Ubuntu /bin/sh
--restart标志被设置为always,表示无论任何情况下都重启
--restart=on-failure:5 表示容器退出代码为非0时,docker会自动重启 该容器,最多重启5次
获取容器详细信息:
sudo docker inspect daemon_dave
可以使用—format 有选择的获取容器信息
sudo docker inspect --format='{{.Name}} {{.State.Running}}' daemon_dave
删除容器:
sudo docker rm 容器名(或者id)
删除所有容器:
sudo docker rm $(docker ps –a -q)