docker常用命令
版本信息
docker version
详细信息
docker info
#容器生命周期管理
创建一个新的容器并运行一个命令
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
删除一个或多个容器
docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
- -f :通过 SIGKILL 信号强制删除一个运行中的容器。
- -l :移除容器间的网络连接,而非容器本身。
- -v :删除与容器关联的卷。
进入运行中的容器
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
- -d :分离模式: 在后台运行
- -i :即使没有附加也保持STDIN 打开
- -t :分配一个伪终端
显示容器使用的系统资源
docker stats
#容器操作
查看容器信息
docker ps [OPTIONS]
OPTIONS说明:
- -a :显示所有的容器,包括未运行的。
- -f :根据条件过滤显示的内容。
- --format :指定返回值的模板文件。
- -l :显示最近创建的容器。
- -n :列出最近创建的n个容器。
- --no-trunc :不截断输出。
- -q :静默模式,只显示容器编号。
- -s :显示总的文件大小。
查看指定容器详细信息(可获取ip,pid等信息)
docker inspect NAME|ID [NAME|ID...]
查看容器的日志
docker logs [OPTIONS] CONTAINER
OPTIONS说明:
- -f : 跟踪日志输出
- --since :显示某个开始时间的所有日志
- -t : 显示时间戳
- --tail :仅列出最新N条容器日志
查看容器php-fpm从2019-12-01后的最新10条日志。
sudo docker logs --since="2019-12-01" --tail=10 a9bbbc42ad8c
查看端口映射
docker port CONTAINER [PRIVATE_PORT[/PROTO]]
docker logs insane_babbage #查看容器log
docker port CONTAINER [PRIVATE_PORT[/PROTO]] #查看端口映射
docker start|stop|restart insane_babbage #启动终止重启
docker attach insane_babbage #进入后台运行的容器 -d(推荐nsenter)
## docker hub
docker search #搜索镜像
docker pull #下载
docker push #推送(需登录)
杀死所有正在运行的容器
docker kill $(docker ps -a -q)
删除所有已经停止的容器
docker rm $(docker ps -a -q)
#镜像
列出Docker主机上可用的镜像
docker images
docker image ls
拉取镜像
docker pull XXXX
如:
docker pull nginx:latest (latest最新)
删除所有未打 dangling 标签的镜像
docker rmi $(docker images -q -f dangling=true)
删除所有镜像
docker rmi $(docker images -q)
强制删除 无法删除的镜像
docker rmi -f <IMAGE_ID>
docker rmi -f $(docker images -q)
使用 Dockerfile 创建镜像
docker build [OPTIONS] PATH | URL | -