o2o网站建设平台,足球比方类网站开发,阿里云服务器免费体验,益阳北京网站建设一、Docker安装过程#xff08;ubuntu18.04环境#xff09;
清华镜像 docker 安装#xff1a;docker-ce | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
1、由于apt官方库里的docker版本可能比较旧#xff0c;所以先卸载可能存在的旧版本ubuntu18.04环境
清华镜像 docker 安装docker-ce | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
1、由于apt官方库里的docker版本可能比较旧所以先卸载可能存在的旧版本
sudo apt-get remove docker docker-engine docker-ce docker.io2、更新ubuntu的apt源索引
sudo apt-get update3、配置安装包允许apt通过HTTPS使用仓库
sudo apt-get install \apt-transport-https \ca-certificates \curl \software-properties-common4、添加Docker官方GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -5、设置Docker稳定版仓库
sudo add-apt-repository \deb [archamd64] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) \stable6、再次更新apt源索引
sudo apt-get update7、安装最新版Docker CE社区版
sudo apt-get install docker-ce8、如果要安装指定版本的docker按如下操作不需要也可以跳过这步操作
apt-cache madison docker-ce # 列出可用的docker-ce版本
sudo apt-get install docker-ce18.06.1~ce~3-0~ubuntu #安装指定的docker版本9、拉取hello-world镜像测试docker容器
sudo docker run hello-world这一步如果报错 Unable to find image ‘hello-world:latest’ locally
出现如下信息即表示docker安装成功并且运行正常请参考这一篇文章
最后 出现如下信息即表示docker安装成功并且运行正常 10、启动 Docker 服务并将其设置为开机启动
sudo systemctl start docker # 启动
sudo systemctl stop docker # 停止
sudo systemctl restart docker # 重启
sudo systemctl enable docker # 设置开机启动
二、daoker 配置root 权限可选
令docker无需root权限每次都要sudo
Docker daemonDocker守护进程可以理解是整个Docker的后台是绑定了Unix SocketUnix套接字一种通讯方式而不是TCP端口来进行通讯。而对于Unix Socket而言它默认是属于root用户的其他用户要使用的话必须在每句命令前加sudo这样的话Docker daemon就一直是运行在root用户上了。 这样比较麻烦我们并不想每句命令都加sudo再一遍遍地输入密码那应该怎么办呢 根据前文Unix Socket默认归属于root用户那么我们调整用户就可以了。 换句话说我们新建一个Unix用户组名叫docker当然你可以叫它别的名字然后在这个用户组中添加一个用户这样使得daemon启动的时候使用的Unix Socket是属于这个用户的而不是root那么就不需要sudo了。
注这样的做法可能会引起安全问题具体可参考Docker Daemon Attack Surface这篇文档。
避免每次输入命令时都要加上sudo
方法1这个测试过
建立docker用户组并添加用户
sudo groupadd docker
sudo usermod -aG docker $USER注销你的账户重新登陆使得用户组设置变动生效
若你使用的是虚拟机那么你最好重启虚拟机使得设置改动生效 若你是用的桌面操作系统比如Linux某个发行版MacOSWindows等完全注销你的账户然后再重新登陆使得设置改动生效。 如果你用Linux你也可以用这样一条指令来使得改动生效
newgrp docker 方法2配置用户组这个没有测试过
sudo usermod -a -G docker $USER
检验一下是否无需sudo
docker run hello-world这条指令就会下载一个测试docker用例并且会提示各种测试的结果如果提示结果正确那么就配置正常
三、在Docker中使用Nvidia GPU
docker发布19.03版本后在docker中使用GPU变得方便。docker添加了使用gpu的option。使得只需要一个option即可在容器中使用GPU跳过了复杂的配置大大降低了使用难度。
docker19.03之后不再需要安装nvidia-docker了。只安装NVIDIA-CONTAINER-RUNTIME就可以使用了并且支持docker-compose。
1、安装NVIDIA-CONTAINER-RUNTIME
1、查看支持的操作系统和版本并根据对应选项添加源 ubuntu 时 基于 Debian 的系统。
官方说明配置软件包仓库地址Migration Notice | nvidia-container-runtime
2、然后执行下面的命令
apt-get install nvidia-container-runtime
3、check nvidia-container-runtime是否安装成功
which nvidia-container-runtime-hook
然后重启 docker daemon
2、向容器暴露GPU
运行容器时添加--gpu参数启用gpu支持
在启动容器时使用--gpus 使主机上的GPU可访问并且可以配置使用多少块GPU
# 使用所有GPU
docker run -it --rm --gpus all ubuntu nvidia-smi# 使用两个GPU
docker run --gpus 2 ubuntu nvidia-smi# 使用指定 GPU
docker run --gpus device1,2 ubuntu nvidia-smi
将所有GPU暴露给容器并调用“nvidia-smi返回的结果则表示doker 可以调用 gpu了