Docker常用的基本命令整理
帮助命令
docker version #显示docker的版本信息
docker info #显示docker的系统信息 包括镜像和容器的数量
docker 命令 --help #帮助命令
帮助文档官方地址:https://docs.docker.com/engine/reference/commandline/docker/
镜像命令
docker images #查看所有本地主机上的镜像
docker pull mysql:8 #下载镜像
docker rmi -f 镜像ID #删除镜像
docker rmi -f 镜像ID 镜像ID 镜像ID #删除多个镜像
docker rmi -f ${docker images -aq} #删除全部镜像
容器命令
创建并启动容器
docker run [可选参数] image
#参数说明
--name ="Name" #容器名字 例: mysql1 mysql2 用来区分
-d #后台方式运行
-it #使用交互方式运行,进入容器查看内容
-p #指定容器的端口 -p 8080:8080
-p ip:主机端口:容器端口
-p 主机端口:容器端口(常用)
-p 容器端口
容器端口
-P #指定随机端口
-e #环境配置
-v 主机目录:容器目录 #数据卷挂载
例:
docker run -it mysql /bin/bash
查看容器
docker ps #列出当前正在运行的容器
-a #列出当前正在运行的容器 + 历史运行过的容器
-n=x #显示x个最近创建的容器
-q #只显示容器的编号
退出
exit #容器停止并退出
CTRL+P+Q #容器不停止退出
删除
docker rm 容器id #删除指定的容器,不能删除正在运行的容器,强制删除用rm -f
docker rm -f ${docker ps -aq} #删除所有的容器
启动和停止容器
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止容器
docker kill 容器id #强制停止容器
常用其他命令
查看日志
开启一个容器,持续输出 docker run -d --name="centos2" centos /bin/sh -c "while true;do echo xuhao;sleep 1;done"
docker logs -t -f --tail 10 容器
-t : 显示时间戳
-f : 格式化
--tail number: 显示number条
查看容器中的进程信息
docker top 容器id
查看容器的元数据
docker inspect 容器id
进入当前正在运行的容器
通常容器都是后台运行的,需要进入容器,修改一些配置
#方式一 进入容器会开启一个新的终端
docker exec -it 容器id /bin/bash
#方式二 进入正在执行的终端,不会启动新的进程
docker attach 容器id
从容器内拷贝到主机
docker cp 116d62b15d3e:/home/xu.txt /home
docker cp 容器id:容器内路径 主机路径
commit镜像
操作过的容器通过commit提交为一个镜像
docker commit -m="描述" -a="作者" 容器id 目标镜像名:[TAG]