一、Docker 常用命令
1.1 镜像相关命令
1.1.1 查看镜像
docker images
- REPOSITORY:镜像名称
- TAG:镜像标签
- IMAGE ID:镜像ID
- CREATED:镜像创建日期(不是拉取镜像的日期)
- SIZE:镜像大小
说明:这些镜像都存储在宿主机 /var/lib/docker 目录下
1.1.2 搜索镜像
docker search 镜像名称
- NAME:仓库名称
- DESCRIPTION:镜像描述
- STARS:用户评价
- OFFICIAL:是否官方
- AUTOMATED:自动构建,表示该镜像由docker hub 自动构建流畅创建的
1.1.3 拉取镜像
拉取镜像就是从中央仓库中下载镜像到本地
docker pull 镜像名称
如:下载centos7镜像,默认拉取最新版本
docker pull centos:7
1.1.4 删除镜像
按镜像ID删除
docker rmi 镜像ID
删除所有镜像
docker rmi `docker images -q`
1.2 容器相关命令
1.2.1 查看容器
查看正在运行的容器
docker ps
查看所有容器
docker ps -a
查看最后一次运行的容器
docker ps -l
查看停止的容器
docker ps -f status=exited
1.2.2 创建与启动容器
创建容器
docker run xxxx
- -i:表示运行容器
- -t:表示容器创建后进入命令行
- –name:为创建的容器命名
- -v:标识目录映射(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
- -d:创建守护式容器在后台运行(创建后不会自动登录)。
- -p:端口映射,前者是宿主机端口,后者是容器映射端口。可以使用多个-p做端口映射
交互式方式容器创建:
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
# 如果镜像使用的最后版本,可不需要加冒号和抱标签
# eg: docker run -it --name=mycentos centos:7 /bin/bash
守护方式容器创建:容器名称不能重复
docker run -di --name=容器名称 镜像名称:标签
# eg: docker run -di --name=mycentos2 centos:7
停止容器
docker stop 容器名称(ID)
启动容器
docker start 容器名称(ID)
登录容器
docker exec -it 容器名称(ID) /bin/bash
退出容器
exit
将宿主机文件复制到容器中
docker cp 文件 容器ID:保存路径
# eg:docker cp anaconda-ks.cfg 3ce7fe61ab8d:/usr/local
将容器文件复制到宿主机中
docker cp 容器ID:文件路径 保存路径
# eg:docker cp 3ce7fe61ab8d:/usr/local/anaconda-ks.cfg ./anaconda-ks2.cfg
1.2.3 目录挂载
我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机的目录文件去影响容器。
创建容器 添加 -v 参数,后面为 宿主目录:容器目录,例如:
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:7
注:如果你共享的是多级目录,可能会出现权限不足的情况
1.2.4 查看容器ip地址
查看容器的各项数据
docker inspect 容器名称(ID)
从容器详情数据中筛选出IP
docker inspect --format="{{.NetworkSettings.IPAddress}}" 容器名称(ID)
1.2.5 删除容器
docker rm 容器名称(ID)