Docker常用指令

Docker常用指令

远程镜像仓库

可以创建一个阿里云的镜像仓库参考这个教程或者百度

然后登录到该远程仓库:

docker login --username=雨天rain0510 registry.cn-qingdao.aliyuncs.com #这些指令你创建远程仓库后,仓库界面都会有的

基本指令

镜像相关

参考

docker images 查看本地镜像
docker ps 查看当前活跃的容器
docker ps -a 查看所有容器
docker exec -it [CONTAINER ID] /bin/bash 进入到运行中/后台的容器
docker attach 容器id 这种方法进入容器会存在一个问题,当多个终端同时进入容器时,所有窗口会同步显示,所以不太适合生产环境使用
docker build -t 镜像名:镜像版本标签 . 根据dockerfile文件创建镜像,.指的就是在.下找dockerfile文件
docker pull nvcr.io/nvidia/pytorch:20.12-py3 从远程拉去镜像
docker push registry.cn-qingdao.aliyuncs.com/rainboy/nvidia-pytorch:20.12-py3.8 推送本地镜像到远程,注意这里本地镜像名和远程仓库地址相同
docker tag IMAGEID registry.cn-qingdao.aliyuncs.com/rainboy/nvidia-pytorch:20.12-py3.8 给已有的镜像重命名,重命名格式为(远程仓库名:版本号)
docker rmi IMAGEID 或者 docker rmi REPOSITORY:TAG 删除镜像,如果删不掉,先删除用这个镜像的容器
docker save -o aa.tar 镜像 将指定镜像保存为.tar文件
docker load -i aa.tar 加载.tar镜像文件

容器相关

docker run的详细解释

docker rm [CONTAINER ID] 删除容器
docker kill [CONTAINER ID] 结束正在运行的容器
docker run --gpus all -it --rm nvcr.io/nvidia/pytorch:xx.xx-py3 /bin/bash 运行镜像并进入容器(会创建一个与你镜像名相同的容器)(--gpus all 是会调用GPU)(-it加上后面的/bin/bash会以交互模式启动一个容器,并运行/bin/bash命令)(--rm会在容器退出时自动清理保存下来的容器系统文件)(也可以用--name指定容器名字)
docker run -p (主机)80:(容器)80 -v (主机)/data:/data -d nginx:latest 使用镜像 ,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data;(-d是以后台模式启动)
exit 退出正在运行的容器
docker commit 容器名 新镜像名:版本号 我们可以在容器中进行更改,比如安装一些东西,添加一些文件等,然后退出该容器,用docker ps -a 查看该容器的ID,然后可以将我们进行的修改保存为另一个新的镜像;也可以调试好了,在Dockerfile中进行修改,重新生成镜像;commit操作不仅会把有用的修改保存下来,对一些无关的修改也会保存下来(每一个命令行操作都会生成存储如ls操作)就会导致镜像比较臃肿;建议在Dockerfile中修改
docker rm 容器ID 删除容器
docker rm $(docker ps -aq) 删除所有容器,-aq是显示所有容器的ID
docker stop $(docker ps -q) 停用所有正在运行的容器
posted @   rain-1227  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
点击右上角即可分享
微信分享提示