Discuz! BBS

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1256|回复: 1

Docker的一系列使用命令

[复制链接]

283

主题

414

帖子

2664

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2664
发表于 2023-9-4 16:14:30 | 显示全部楼层 |阅读模式
# docker run -itd --name centos4 centos-vim:v1.0
# docker exec -it centos4 /bin/bash
# docker stats
# docker stop <容器 ID>

备份一个镜像到任意位置
$ docker save -o /home/somepath/my_image.tar my_image:latest

my_container是正在运行的容器名称:
$ docker commit my_container my_image_backup

从镜像恢复:
$ docker load< my_image.tar

docker rm chain2
docker rmi redpill-tool-chain:ds3615xs-6.2.4-25556

#清理数据
docker system prune     #清理不再使用的镜像和容器
docker container prune
docker image prune
docker volume prune     # 清理所有Docker卷(该卷未被任何容器使用)

见:https://blog.csdn.net/qq_36733838/article/details/127640727


docker image 改名
docker tag <原镜像名或 ID> <新镜像名>
例如:
docker tag my_image:1.0  your_image:2.0
docker tag 6c1ff6839382 unicoder/mariadb:instance2

删除旧的标记:
docker rmi <原镜像名或 ID>
例如:
docker rmi my_image:1.0

推送新的标记到Docker仓库【可选】:
docker push <新镜像名>
例如:
docker push your_image:2.0

查看运行中的container:docker ps
查看所有的container[包含退出的]:docker ps -a
根据镜像创建容器: docker run -d -p 9090:8080 --name <container name> <imageName:tag>
查看容器详情信息: docker inspect container
查看某个container的日志:docker logs container
进入到一个container中:
docker exec -it container bash
删除container: docker rm containerid docker rm -f $(docker ps -a) 删除所有container
根据container生成image: docker commit <container name> <imageName:tag>         
查看容器资源使用情况:docker stats
停止/启动容器:docker stop/start container



查看docker镜像列表:
docker images
删除docker镜像:
docker rmi guiji2025/fun-asr  (就是上一个命令列出的一个镜像)

查看docker-compose列表:
先定位好一个docker-compose.yml ,当前路径:
cd /heygem.ai/deploy
然后,查看当前运行的docker-compose:
sudo docker-compose -f docker-compose-linux.yml ps


启动和删除 docker-compose:
sudo docker-compose -f docker-compose-linux.yml up -d    (d 代表detechment)
sudo docker-compose -f docker-compsoe-linux.yml down
除了down 和 up 之外,还可以用stop start .

将当前系统构建为镜像:
docker build --network host -t mariadb:mysql .
host指网络直接使用宿主机的网络。















回复

使用道具 举报

283

主题

414

帖子

2664

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2664
 楼主| 发表于 2025-5-15 17:07:53 | 显示全部楼层
详解Docker运行指令
您提供的Docker运行指令包含多个选项,下面我将逐一解释每个选项的含义和作用:

sudo docker run

sudo:以超级用户权限运行Docker命令,这是因为某些操作(如绑定到低端口号)需要管理员权限。
docker run:Docker的一个命令,用于创建一个新的容器并运行一个命令。
--gpus=all

该选项允许容器访问主机上的所有GPU资源。这对于需要GPU加速的应用程序(如深度学习模型)非常有用。
-p 10090:10095

-p 或 --publish:将容器内的端口映射到主机上的端口。在这个例子中,它将容器内的10095端口映射到主机的10090端口上,使得外部可以通过访问主机的10090端口来访问容器内的服务。
-it

-i 或 --interactive:保持容器的标准输入(STDIN)开放,即使没有附加也是如此。
-t 或 --tty:分配一个伪终端或终端,这使得您可以与容器进行交互。
--privileged=true

该选项给予容器额外的权限,几乎等同于在主机上运行。这通常用于需要访问主机硬件或执行一些特权操作的容器。然而,使用此选项会降低系统的安全性,因为它允许容器执行任何主机上的操作。
-v $PWD/funasr-runtime-resources/models:/workspace/models

-v 或 --volume:挂载一个卷,这里将主机上的当前工作目录下的funasr-runtime-resources/models目录挂载到容器内的/workspace/models目录。这允许容器访问主机上的特定文件或目录,同时也允许容器对这些文件或目录进行修改,这些修改将反映在主机上。
综上所述,这条指令创建了一个新的Docker容器,该容器有权访问所有GPU资源,将容器内的10095端口映射到主机的10090端口,以交互模式运行,并具有特权访问权限。此外,它还挂载了主机上的一个目录到容器内,以便容器可以访问和修改这些文件。

请注意,使用--privileged=true选项时要格外小心,因为它会显著提高容器的权限,从而可能带来安全风险。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-6-7 10:11 , Processed in 0.014111 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表