Docker常用命令总结——属于你的Docker查询手册

导读:本篇文章讲解 Docker常用命令总结——属于你的Docker查询手册,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

docker软件命令

查看docker版本:

docker version
docker -v

重启docker:

sudo systemctl daemon-reload
sudo systemctl restart docker

镜像相关

参考资源:https://www.runoob.com/docker/docker-image-usage.html
查看本地已经安装的Docker镜像:

docker images
or
docker image ls

搜索镜像:

docker search <image_name>

如:

docker search opencv

运行镜像:

docker run <image_name>

删除镜像:
https://blog.csdn.net/winy_lm/article/details/77980529
http://blog.51yip.com/cloud/1859.html

  • 删除指定镜像:

    docker rmi hello-world:latest
    
  • 删除none镜像:

    # 删除none镜像
    # 可能需要先删除与该none镜像相关的运行的容器
    docker rmi $(docker images | grep "none" | awk '{print $3}')
    
     或者直接用命令直接删除该镜像相关的容器和镜像,最好先确认下确实用不上了该镜像再执行
     docker rmi --force $(docker images | grep "none" | awk '{print $3}')
    

镜像的离线保存与加载:
https://blog.csdn.net/lxf2323881/article/details/79274357

  • 保存镜像文件到tar格式的离线文件:

    docker save -o <file_name>.tar <image_name>
    or
    docker save <image_name>  -o <file_name>.tar
    如
    docker save -o py36_torch.tar python36/pytorch:lastest
    
  • 加载离线镜像文件:

    docker load < <file_name>.tar
    如
    docker load < py36_torch.tar
    

容器相关

运行容器:
docker会通过镜像名找到需要运行的容器,载入该容器,并运行在这个容器中的指定命令。

docker run <各种选项> <镜像名>

有关docker的运行命令选项众多,可以了解一些常用选项,满足日常需求即可:
1、基础版本
启动一个带有终端交互的容器

docker run -it <镜像名:Tag> bash

2、启动一个使用宿主机网络的容器
常在带有代理的环境下有用
https://www.debugself.com/2018/01/17/docker_network

docker run --network=host -it <image_name>

显示正在运行的容器:

docker ps
or
docker container ls

显示所有运行容器(包括已经终止的,即运行过的容器):

docker ps -a

格式化显示运行的容器:
https://zju.date/docker-ps-format/

docker ps --format 'table {{.Names}}\t{{.Image}}'

终止容器运行:

docker stop <the-container-id>

清除容器:

docker rm <container-name or container-id> #删除容器
docker container prune # 删除所有已经终止的容器

终止并删除容器:

docker rm -f <the-container-id>

查看镜像或容器信息:

docker inspect <镜像名或容器ID>

从容器commit创建新的镜像:

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:

-a :提交的镜像作者;

-c :使用Dockerfile指令来创建镜像;

-m :提交时的说明文字;

-p :在commit时,将容器暂停。

其中CONTAINER可以为当前运行容器的ID或名字,REPOSITORY即为创建的镜像名。

进入(关联)到已启动的容器:

会同步操作:
docker attach 44fc0f0582d9
Ctrl+C
或
异步操作:推荐
docker exec -it 775c7c9ee1e1 /bin/bash

容器退出后重新进入:

docker restart <container_name>

这样就会直接进入到容器退出前的状态,不用再次重新启动容器

空间占用分析:

具体操作请参考Docker Tips: Clean Up Your Local Machine

查看空间占用情况:

docker system df

查看详细空间占用情况:

docker system df -v

代理设置

如果你使用docker的机器处在代理环境中,如果不配置代理的话在执行docker pull hello-world可能会出现报错:

Get https://registry-1.docker.io/v2/: authenticationrequired

配置方法:

修改/etc/default/docker文件,最后添加:

export http_proxy=http://username:password@proxy.xxx.com:port
export no_proxy="localhost,127.0.0.1,.xxx.com"
DOCKER_OPTS="--insecure-registry rnd-dockerhub.xxx.com"

然后重启docker服务:systemctl restart docker

此时直接docker pull hello-world能够成功。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/121201.html

(0)
seven_的头像seven_bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!