Docker操作

docker基本操作

构建docker镜像(需自己写好dockerfile文件,整理相关依赖文件)

sudo nvidia-docker build -t your_docker_img:tag .

查看已有镜像

sudo docker image ls

载入一个本地文件镜像

sudo nvidia-docker load -i <镜像名称>

对镜像交互式生成容器(参考“从镜像中生成容器”

sudo nvidia-docker run -p 5200:5000 \
--name your_container_name -it\
-v /home/usrname/dir1:/home/dockername/dir1 \
-v /home/usrname/dir2:/home/dockername/dir2 \
-v /home/usrname/dir3:/home/dockername/dir3 \
–restart=always \
your_docker_img:tag \
python manage_server.py

-p 端口映射,宿主机端口:开放的容器端口
-v 路径映射,宿主机路径:容器路径
–name 新生成的容器名称
–restart=always 开机自启
your_docker_img:tag 镜像名称

查看已有容器

sudo docker ps -a

开始及停止一个容器

开始一个容器
sudo docker start <容器id>
停止一个容器
sudo docker stop <容器id>

进入一个容器

sudo docekr exec -it <容器id> /bin/bash

删除镜像或容器

删除容器
sudo docker rm <容器id>
删除镜像
sudo dokcer rmi <镜像id>

保存镜像

sudo docker save -o your_docker_img_tag.tar your_docker_img:tag

更新容器

# 更新容器的状态设置(以关闭--restart为例)
sudo docker update --restart=no <容器名>
# 提交容器修改到镜像
sudo docker commit -m "<说明信息>" -a "<用户信息>" <容器id> <镜像名>:<Tag>

文件交互

拷贝文件到docker

sudo docker cp <文件> <容器名>:<容器中的路径>

日志查看

参考docker logs 查看实时日志

# 查看实时日志
sudo docker logs -f <容器id>
# 查看最新的10条日志
sudo docker logs -f --tail=10 <容器id>

问题解决

Docker build error: No left space in device

运行sudo docker build时提示空间不足,这里需要注意docker的位置,一般是在根目录“/”下。解决方法可参考[Docker] Docker build error: No left space in device

  1. df -h查看磁盘空间,特别是注意根目录的空间;
  2. 到所在目录,du -chs *查看占用最大的目录;
  3. 一级一级检索,一般会发现/var/lib/docker目录最大,需要清理;
  4. sudo rm /var/lib/docker/* rf删除,注意清空后所有镜像和容器都清空,有重要信息请提前备份

Failed to register layer: …

按上述方法清理后,重新bulid提示各种no such file or directory,参考 Docker下载镜像出现failed to register layer: symlink…问题,需要对ubuntu的docker重启。

启动docker
sudo service docker start
关闭docker
sudo service docker stop
重启docker
sudo service docker restart

DockerFile中镜像查找

Docker Hub

<镜像名>:<Tag>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值