🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
1 运行容器 指定某个镜像以容器的形式运行起来。语法为:[docker](https://so.csdn.net/so/search?q=docker&spm=1001.2101.3001.7020)run \[OPTIONS\] {IMAGE\_NAME}。 {IMAGE\_NAME} 指的是镜像名称; \[OPTIONS\] 指的是命令可选项。 Run的命令可选项非常多,我们在此列举出那些常用的可选项。 参数说明-d在后台运行容器并打印出容器 ID;d 是 detach 的英文首字母。 \-p映射端口号到主机。格式形如主机端口:容器端口。 \--name指定容器名称。 \--restart重启策略,有 no、on-failure\[:max-retries\]、always 与 unless-stopped 四种1。 \-v绑定虚拟机工作目录到容器目录。格式形如工作目录:容器目录。如果工作目录不存在,docker 会自动新建。 这里的工作目录指的是虚拟机中的 CentOS目录。 2 查看容器 查看正在运行的命令为:docker ps。 ![29a1d52a4aaa49cfcc8959056736e155.png](https://img-blog.csdnimg.cn/img_convert/29a1d52a4aaa49cfcc8959056736e155.png) 列表字段具体说明如下: 字段说明CONTAINERID容器 ID IMAGE镜像名称 COMMAND容器启动时所运行的命令 CREATED容器创建时间,格式为距今多久 STATUS容器运行状态;常见的有:UP 表示运行中;Exited 表示已退出 PORTS需要对外暴露的端口号 NAMES容器名称 加上 -a 参数可以查看所有容器(不只是运行中的容器),完整命令为:docker ps -a。 加上 -f 参数可以加入过滤条件,比如我们想过滤出镜像名称只包含 “config”的镜像。使用命令 docker ps -f "name=config": ![036ae6164d75f74c5a2be181f1b1162f.png](https://img-blog.csdnimg.cn/img_convert/036ae6164d75f74c5a2be181f1b1162f.png) 3 进入容器 以下两种指令都只能进入处于运行中的容器。 3.1查看运行日志 进入容器查看运行日志的命令格式为:docker attach {CONTAINER\_ID}。其中 {CONTAINER\_ID} 表示容器 ID。进入容器之后,就可以在控制台看到容器内的输入、输出与错误日志信息。下图是 gitLab 容器的运行日志: ![4d799ff158b775e6a98ac9b8fe1a5f55.png](https://img-blog.csdnimg.cn/img_convert/4d799ff158b775e6a98ac9b8fe1a5f55.png) 在此如果键入 ctrl+Z,就会停止运行中的容器。 3.2执行 Linux 指令 在容器内执行 Linux 指令使用 docker 的 exec 指令,语法为: docker exec \[OPTIONS\] {CONTAINER\_ID} {COMMAND}。{CONTAINER\_ID} 是容器 ID,{COMMAND} 是需要执行的指令。 可能会用到以下两个可选参数 \[OPTIONS\]: 参数说明-i打开交互模式,即保持 stdin 标准输入处于开启状态;i 即 interactive。 \-t分配一个伪终端;t 即 tty。 \-w指定容器中的工作路径 比如我们想进入 /var/log/gitlab 目录,然后打印出该目录的文件列表,就可以使用这条命令:docker exec -t -i -w /var/log/gitlab {CONTAINER\_ID} ls -l。 命令执行后的输出结果形如: ![f4ebb0e32c25fa5e361df297089dd12b.png](https://img-blog.csdnimg.cn/img_convert/f4ebb0e32c25fa5e361df297089dd12b.png) 4查看容器日志 命令为:docker logs \[CONTAINER\_ID\],其中 \[CONTAINER\_ID\] 表示容器 ID。输出结果形如: ![6fdebf8a09a8c9622418d191951f9581.png](https://img-blog.csdnimg.cn/img_convert/6fdebf8a09a8c9622418d191951f9581.png) 5停止容器 停止某个容器,语法为:docker stop {CONTAINER\_ID}。 如果想停止所有容器,可以使用以下语法: docker stop `docker ps -a -q`2 docker ps -a -q 会输出所有正在运行的容器 ID。 \-a 表示列出所有正在运行的容器,a 是 all 的缩写; \-q 表示只输出容器 ID,q 是 quiet 的缩写。 6 启动容器 启动已停止的容器,语法为:docker start {CONTAINER\_ID}。 7 重启容器 启动运行中的容器,语法为:docker restart {CONTAINER\_ID}。 8 删除容器 命令为 docker rm {CONTAINER\_ID},其中的 {CONTAINER\_ID} 表示的是容器 ID。这条命令只能删除非运行状态的容器。如果需要删除正在运行的容器,可以带上 -f 命令参数,f 是 force 的单词简写形式。 命令执行成功后,控制台会返回被删除的容器 ID。