1、docker的启动和停止:
systemctl命令是系统服务管理器指令
启动docker:systemctl start docker
停止docker :systemctl stop docker
重启docker:systemctl restart docker
查看docker状态:systemctl status docker
开机后,自动启动docker:systemctl enable docker
查看docker概要信息:docker info
查看docker帮助文档:docker --help
2、常用命令
2.1 镜像相关命令
1)查看镜像:docker images
REPOSITORY:镜像名称
TAG:镜像标签
IMAGE ID:镜像ID
CREATED:镜像的创建日期(不是获取该镜像的日期)
SIZE:镜像大小
2)搜索镜像:docker search 镜像名称;docker search centos
NAME:仓库名称
DESCRIPTION:镜像描述
STARS:用户评价,反应一个镜像的受欢迎程度
OFFICIAL:是否官方
AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的
3)拉取镜像:docker pull 镜像名称;
从中央仓库中下载镜像到本地:
如果不指定标签时,拉取latest版本的镜像:docker pull centos
通过冒号指定拉取特定标签的版本镜像:docker pull centos:7
4)删除镜像
按镜像ID删除镜像:docker rmi 镜像ID
按镜像名称删除:docker rmi 镜像名称
删除所有镜像:docker rmi `docker images -q`
如果镜像有运行中的容器时,该镜像删除不能成功;要先把通过该镜像创建的所有容器都停止后,再操作删除镜像;
2.2 容器相关命令
1)查看容器
查看正在运行的容器:docker ps
镜像相当于模版,通过一个镜像可以创建很多个容器;
查看所有容器:docker ps -a
查看最后一次运行的容器:docker ps -l
查看停止的容器:docker ps -f status=exited
2)创建与启动容器
创建容器命令:docker run
-i:表示运行容器;
-t:表示容器启动后会进入其命令行。加入这2个参数后,容器创建就能登录进去,即分配一个伪终端。
--name:为创建的容器命名;
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射;
注意:最好做目录映射,在宿主机上做修改,然后共享到容器上;
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器);
-p:标识端口映射,前者是宿主机端口,后者是容器内的映射端口,可以使用多个-p做多个端口映射
(1)交互式方式创建容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
通过ps命令查看,可以看到启动的容器,状态为启动状态。
命令:docker run -it --name=mycentos centos /bin/bash
最新版本的标签latest可以忽略,否则要指定镜像的版本,如centos:7
当以交互式方式创建容器时,创建成功后,就进入centos容器中;
从容器中退出到宿主机:exit
(2)守护式方式创建容器
命令:docker run -di --name=容器名称 镜像名称:标签
docker run -di --name=mycentos2 centos
登录守护式容器方式:docker exec -it 容器名称(或容器ID) /bin/bash
创建容器后,进入容器(不会自动进入):docker exec -it mycentos2 /bin/bash
3)停止与启动容器
停止容器:docker stop 容器名称(或容器ID)
启动容器:docker start 容器名称(或容器ID)
启动失败时:docker logs [容器名]
4)删除容器
删除指定容器:docker rm 容器名称(或容器ID)
删除容器前,要先停止容器,否则会报错:docker rm mycentos2
问题:
查看挂载目录
docker inspect pgdb | grep Mounts -A 20