1、创建容器
使用docker run创建容器。
docker run $IMAGE:TAG # 运行 or 下载镜像
完整的命令:
后台运行,容器命名为train,支持显卡,主机端口4001映射为容器内22端口以支持ssh通讯,挂载主机/data/docker目录至容器/home目录,提供终端操作。
docker run -it --name train --rm --runtime=nvidia -p 4001:22 \
--mount type=bind,source=/data/docker,target=/home \
$IMAGE_ID /bin/bash
参数说明:
-it:这是两个参数,一个是 -i:交互式操作,一个是 -t 终端。
--name:创建的容器名字。
--runtime:运行时,使用GPU。
--gpus:配置gpu的使用,如:--gpus all,--gpus 0,1
-p:端口映射。
--mount:挂载主机目录至容器。
--rm:这个参数是说容器退出后随之将其删除,使用 --rm 可以避免浪费空间。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash。
2、进入运行中的容器
使用docker exec进入运行中的容器。
docker exec -it $CONTAINER_ID /bin/bash # 进入容器
3、查看容器
容器状态包括:运行中,退出等,docker ps 指令添加不同参数可看到不同的容器信息。
docker ps # 查看所有正在运行容器

docker ps -a # 查看所有容器

docker ps -a -q # 查看所有容器ID
![]()
4、终止运行中的容器
使用docker stop终止一个运行中的容器,终止状态的容器,可以使用docker start来重新启动。
docker stop $CONTAINER_ID # 来终止一个运行中的容器
![]()
终止状态的容器,可以使用docker start来重新启动。

停止所有容器:
docker stop $(docker ps -a -q) # stop停止所有容器
5、删除容器
使用docker rm删除停止的容器。
docker rm $CONTAINER_ID # remove 单个容器
docker rm -f $CONTAINER_ID # 强制删除容器
docker rm $(docker ps -a -q) # remove 删除所有容器
docker rm `docker ps -a -q` 删除所有的container;
docker ps -a -q | xargs docker rm 同上, 删除所有的container;
6、清理所有处于终止状态的容器
如果数量太多要一个个删除可能会很麻烦,用下面的命令可以清理掉所有处于终止状态的容器。
$ docker container prune
传送门:
完整的docker教程见docker使用教程(持续更新,推荐),docker实战系列文章快速访问地址如下:
本文详细介绍了Docker容器的管理,包括使用`docker run`创建并运行容器,设置GPU支持、端口映射和数据卷挂载。通过`docker exec`进入容器,`docker ps`查看容器状态,`docker stop`和`docker rm`停止与删除容器。此外,还提供了清理终止状态容器的命令以及一系列实用的Docker管理技巧。
1万+

被折叠的 条评论
为什么被折叠?



