docker 安装与使用 常用命令

docker ubuntu 安装

apt install docker      

nvidia docker 安装

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

# Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

docker 容器安装

docker pull ubuntu  默认安装ubuntu最新版本 也可以加版本号  docker pull ubuntu:16.04

这个时候可以使用docker images 命令查看拉取docker 镜像

接着要创建容器 docker run -p 8080:8080 -it ubuntu "/bin/bash" 创建好就直接进入了 

如果需要映射多个端口可以在加一个-p 111:1111

run 命令详解 https://www.cnblogs.com/yfalcon/p/9044246.html

容器启动时启动应用 https://blog.csdn.net/wxuzero/article/details/80610237

需要退出执行 exit   如果退出时不想容器停止运行可以 Ctrl + P + Q

这个时候使用docker ps -a 查看创建的容器

如果要再次进入容器先执行 docker start 容器ID  在执行 docker attach 容器ID 这个时候再次敲下回车就进入了容器

删除容器 docker rm 容器ID

如果想要保存当前的修改内容使用 docker commit  容器ID  镜像:版本(这个是可以自己命名例如:mydocker:1.0)

在执行docker images 就能看到了

提交到镜像服务器 docker push 镜像:版本

容器打标签 docker tag 镜像:版本  新镜像:版本

删除镜像 docker rmi  镜像:版本

如果需要打包docker 镜像 可以执行 docker save -o 镜像名字.tar 镜像:版本(mydocker:1.0)

加载镜像  docker load --input 镜像名字.tar

以上就是docker 使用的完整流程

容器开启启动 --restart=always

设置内存和cpu  -m 1024M --cpus=0.2

如果需要更新已启动的容器配置参数 执行 docker update --restart=always 容器ID

自己的容器如果不加-it 为啥启动不起来https://www.jianshu.com/p/f1e7a1630c64

多个docker 之间使用进程通信,首先需要使用 docker run -v /docker_root:/docker_root  把同一个宿主机上的文件目录挂在到多个不同的docker 这样多个docker 就可以实现共享数据了,如果使用有名管道就可以在多个docker 之间进行通信了

docker 查看本地镜像服务器所有容器 curl  http://192.168.8.45:5000/v2/_catalog

docker 查询镜像所有标签(版本) curl -XGET http://192.168.8.45:5000/v2/镜像名称/tags/list

另外现在最新版本的docker 19.03.8  执行的时候已经可以不用加sudo 了

启动                     sudo systemctl start docker
守护进程重启      sudo systemctl daemon-reload
重启docker服务   sudo systemctl restart  docker
重启docker服务   sudo service docker restart
关闭docker          sudo service docker stop
关闭docker          sudo systemctl stop docker

 

另外 docker run , exec , attach 的区别

  • docker run;创建和启动一个新的容器实例,操作对象是镜像,选项较多,如果你要创建和启动一个容器,只能用run;
  • docker exec: 在已运行的容器中,执行命令,操作对象是容器,如果你要进入已运行的容器,并且执行命令,用exec;
  • docker attach: 同样操作的是已运行的容器,可以将本机标准输入(键盘输入)输到容器中,也可以将容器的输出显示在本机的屏幕上,如果你想查看容器运行过程中产生的标准输入输出,用attach;

nvidia docker : https://hub.docker.com/r/nvidia/cuda/tags

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值