docker常用命令

查看镜像:

docker images 

查看正在运行的容器:

docker ps

查看全部容器:

docker ps -a

启动容器并保持一直运行:

docker run -d --name 容器名 镜像名 tail -f /dev/null
docker run -d --name 容器名 镜像名 /bin/bash -c "while true; do sleep 1; done"

以特权模式启动容器:

docker run -d --name 容器名 --privileged 镜像名

端口映射:

docker run -d -p 主机端口:容器端口 --name 容器名 镜像名

把主机目录挂载到容器目录:

docker run -d -v /主机路径:/容器路径 --name 容器名称 镜像名称

资源限制:

GPU资源限制需安装nvidia runtime

docker run --runtime=nvidia --restart=always  -it --name 容器名 --cpuset-cpus="0-8" -m 24G -v /sys/fs/cgroup:/sys/fs/cgroup:ro --gpus '"device=1"'  -p 10000:22 镜像名 /bin/bash

`-v /sys/fs/cgroup:/sys/fs/cgroup:ro` 的挂载是用来进行容器资源限制的。在 Docker 中,cgroup 控制组(cgroup)是一种用于限制和控制容器资源(如 CPU、内存、设备等)使用的机制。通过将主机上的 /sys/fs/cgroup 目录挂载到容器内,容器可以与主机的 cgroup 配置交互,从而实现对资源的限制。

这个挂载操作通常用于以下目的:

1. 限制资源使用: 通过挂载主机上的 cgroup 目录,你可以在容器内设置资源限制,例如限制容器的内存使用、CPU 使用、IO 限制等。这有助于确保容器在运行时不会无限制地占用主机资源。

2. 与容器运行时交互: cgroup 挂载还使容器运行时(如 Docker Daemon)能够监视和控制容器的资源使用。这使得容器可以按照其资源限制的要求正常运行。

3. 容器生命周期管理: cgroup 挂载允许容器运行时跟踪容器的生命周期,并在容器启动和停止时进行资源配置。

`-v /sys/fs/cgroup:/sys/fs/cgroup:ro` 挂载对于容器资源管理非常重要,它允许容器在运行时受到限制,同时也允许容器运行时与主机资源管理系统进行交互。有助于确保容器在共享主机资源的多容器环境中能够正常运行并遵守资源限制。

打包容器:

docker stop 容器
docker commit 容器id 新的容器名

归档镜像:

保存单个镜像到归档文件:

docker save -o my_image.tar my_image:tag

保存多个镜像到归档文件:

docker save -o my_images.tar image1:tag image2:tag

指定输出格式:

docker save my_image:tag | gzip -c > my_image.tar.gz

加载保存的镜像:

docker load -i my_image.tar
文章作者: Administrator
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 IKKO
linux docker
喜欢就支持一下吧