镜像操作
基于Dockerfile创建镜像
docker build -t "image_name:tag_name" --rm .
删除一个镜像
docker rmi "image_name:tag_name"
docker rmi image_id
删除所有none中间镜像
docker rmi $(docker images --filter "dangling=true" -q)
查看镜像各层
docker history test_image
查看镜像信息
docker inspect test_image
容器操作
运行一个ubuntu容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
docker run --name test_container -ti ubuntu /bin/bash
以守护进程的方式启动一个新的容器
docker run -d --name test_container -p 9100:9100 -v /etc/localtime:/etc/localtime:ro test_image
自动重启容器
当有容器的退出代码为非0值的时候,才会自动重启。
docker run --restart=always --name test_container -d ubuntu /bin/bash -c "while true; do echo hello world; sleep 1; done"
最多重启5次
docker run --restart=on-failure:5 --name test_container -d ubuntu /bin/bash -c "while true; do echo hello world; sleep 1; done"
启动已经停止的容器
docker restart test_container
重新启动容器
docker restart test_container
停止容器
docker stop test_container
docker stop 命令会向Docker容器进程发送SIGTERM信号。如果你想快速停止某个容器,也可以使用docker kill命令来向容器进程发送SIGKILL信号。
进入一个运行中的容器
docker exec -it container_id /bin/bash
# 退出
exit
附着到容器上
docker attach test_container
可能需要按下回车键才能进入该会话
查看容器内的进程
docker top test_container
在容器内部运行进程
docker exec -d test_container touch
查看容器信息
docker inspect test_container
删除容器
docker rm test_container
# or
docker rm container_id
# 删除所有容器
docker rm `docker ps -a -q`
查看容器日志
docker logs container_id