你得折腾起来啊!
常用命令
# 显示docker的版本信息
docker version
# 显示docker的系统信息,包括镜像和容器的数量
docker info
# 万能命令
docker 命令 --help
镜像命令
docker images 查看所有本地的主机上的镜像
1.解释
RESPOSITORY | 镜像的仓库源 |
TAG | 镜像的标签 |
IMAGE ID | 镜像的id |
CREATED | 创建时间 |
SIZE | 大小 |
2.可选项
-a, --all # 列出所有镜像
docker images -a
-q, --quiet # 只显示镜像的id
docker images -q
docker images -aq #列出所有镜像的id
docker search 搜索镜像
ps: 建议去docker hub 搜索,可以显示详细信息及示例
1.可选项
-f, --filter # 按条件过滤结果
docker search nginx --filter=TARTS=3000
docker pull 镜像名[:tag] # 下载镜像
不写tag 默认拉去latest版本
docker pull nginx:1.0
docker rmi 删除镜像
docker rmi -f 镜像id #删除指定容器
docker rmi -f 镜像id 镜像id 镜像id ... # 删除多个容器
docker rmi -f $(docker iamges -aq) # 删除全部的容器
容器命令
docker pull 下载一个镜像
docker pull name[:tag]
新建容器并启动
docker run [可选参数] image
# 参数说明
--name="name" # 容器名字 nginx1 nginx2 用来区分容器
-d # 后台方式运行
-it # 使用交互方式运行,进入容器查看内容
--restart=always # 表示容器自启,一直运行
-p # 指定容器的端口 -p 8080:8080
-p ip:主机端口:容器端口
-p 主机端口:容器端口
-P 随机指定端口
# 启动并进入容器
docker run -it nginx /bin/bash
# 退出容器
exit # 直接退出,容器停止并推出
CTRL + P + Q # 容器不停止退出
docker ps # 列出所有运行中的容器
# 参数
# 出当前正在运行的容器
-a # 列出当前正在运行的容器 + 带出运行过的容器
-n=? #显示最精创建的容器
-q # 只出当前正在运行的容器
docker rm #删除容器
docker rm 容器id # 删除指定的容器(不能删除正在运行的容器,如果要删除 加 -f)
docker rm -f $(docker ps -aq) # 删除所有容器
docker ps -a -a|xargs docker rm # 删除所有容器
启动和停止容器的操作
docker start 容器id # 启动容器
docker restart 容器id # 重启容器
docker stop 容器id # 停止当前正在运行的容器
docker kill 容器id # 强制停止当前的容器
常用的其他命令
1.后台启动
# 命令 docker run -d 镜像名
docker run -d nginx
# 问题docker ps, 发现 容器停止了
# 常见坑:docker 容器使用后台运行,就必须要有哦一个前台进程,docker发现没有应用,就会自动停止
2.查看日志
docker logs 容器id
# 参数
-f # 持续打印
-t, #
--tail number #要显示的条数
3.查看容器中近程信息
docker top 容器id
4.查看镜像的元数据
docker inspect name|id
5.进入当前正在运行的容器
通常容器都是使用后台的方式运行的,需要进入容器,修改一些配置
# 进入容器后开启一个新的终端,可以在里面操作
docker exec -it 容器id /bin/bash
# 进入正在执行的终端,不会启动新的进程
docker attach 容器id
6.从容器内拷贝文件到主机上
1.进入容器
docker attach 容器id
2.拷贝
docker cp 容器id:容器内路径 目的地路径
总结
// 查看正在运行的容器
docker ps
// 查看所有的容器,包括停止运行的容器
docker ps -a
// 下载一个镜像
docker pull name[:tag]
//