Ubuntu docker安装、验证、卸载
卸载Docker CE
sudo apt-get purge docker-ce
主机上的图像,容器,卷或自定义配置文件不会自动删除。要删除所有图像,容器和卷:
sudo rm -rf /var/lib/docker
您必须手动删除任何已编辑的配置文件。
一般我都会再执行以下,把依赖什么的也全都删掉
sudo apt autoremove docker-ce
卸载列出所有docker安装的组件
dpkg -l |grep docker

apt remove --purge dockker.io
所有的都需要卸载
脚本安装docker(简易方式,需网):
在Ubuntu系统中安装较为简单,官方提供了脚本供我们进行安装。
sudo apt install curl
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
执行这个命令后,脚本就会自动的将一切准备工作做好,并且把Docker CE 的Edge版本安装在系统中。
启动Docker CE
sudo systemctl enable docker
sudo systemctl start docker
建立docker 用户组
默认情况下,docker 命令会使用Unix socket 与Docker 引擎通讯。而只有root 用户和docker 组的用户才可以访问Docker 引擎的Unix socket。出于安全考虑,一般Ubuntu系统上不会直接使用root 用户。因此,更好地做法是将需要使用docker 的用户加入docker用户组。
# 建立docker组
sudo groupadd docker
# 将当前用户加入docker组
sudo usermod -aG docker $USER
注销当前用户,重新登录Ubuntu,输入docker info,此时可以直接出现信息。
配置国内镜像加速
在/etc/docker/daemon.json 中写入如下内容(如果文件不存在直接新建该文件)
sudo vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
重新启动服务
sudo systemctl daemon-reload
sudo systemctl restart docker
验证
启动一次操作容器:docker run IMAGE_NAME [COMMAND] [ARG…]
例如,启动一个容器输出hello world。由于刚装上Docker,没有任何镜像,所以会先下载一个最新的ubuntu18.04的docker镜像。一次操作容器在处理完操作后会立即关闭容器。
docker run ubuntu echo 'hello world'
启动交互式容器:docker run -t -i –name=自定义名称 IMAGE_NAME /bin/bash
-i –interactive=true | false,默认是false
-t –tty=true | false,默认是false
–name 给启动的容器自定义名称,方便后续的容器选择操作
启动交互式的容器,就是类似虚拟机、云主机的操作方式,操作完一个命令后仍然可以继续:
docker run -i -t ubuntu /bin/bash
拉GPUTensorFlow:
docker tensorflow的镜像官网为https://hub.docker.com/r/tensorflow/tensorflow/,首先按照官方教程安装nvidia-docker2,之后的tensorflow-gpu镜像都需要nvidia-docker来启动,或者docker run --runtime=nvidia,当然这样就足够用了,如果你想用docker取代nvidia-docker可以修改/etc/docker/daemon.json为如下所示,即在第一行加入"default-runtime": "nvidia",这样就可以直接用docker取代nvidia-docker了。
{ "default-runtime": "nvidia", "runtimes": { "nvidia": { "path": "/usr/bin/nvidia-container-runtime", "runtimeArgs": [] } }}下载成功后执行:
docker images
步骤:
1.安装cuda
2.安装 nvidia-docker2
2.1安装nvcc
sudo apt install nvidia-cuda-toolkit
验证nvcc --version
2.2设置stable存储库和密钥
sudo apt-get install -y nvidia-docker2用到了。。。distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
nvidia-docker2安装包sudo apt-get updatesudo apt-get install -y nvidia-docker2重启docker
sudo systemctl restart docker
用官方container测试是否安装成功
sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
拉TensorFlow的镜像
docker pull tensorflow/tensorflow:2.7.1-gpu
docker pull tensorflow/tensorflow:2.5.1-gpu
docker pull tensorflow/tensorflow:2.6.0rc0
启动容器
如果在前面配置了"default-runtime": "nvidia",那么执行:
|
1
|
docker run --rm -it -v /home/zzh/:/root/tensorflow --name zzh tensorflow/tensorflow:1.8.0-devel-gpu-py3 |
没有配置则可以执行:
|
1
|
nvidia-docker run --rm -it -v /home/zzh/:/root/tensorflow --name zzh tensorflow/tensorflow:1.8.0-devel-gpu-py3 |
或者执行:
|
1
|
docker run --runtime=nvidia --rm -it -v /home/zzh/:/root/tensorflow --name zzh tensorflow/tensorflow:1.8.0-devel-gpu-py3 |
其中docker run的参数含义如下:
(1)--rm 退出容器清除数据
(2)-it 启动交互式终端
(3)-v 挂在目录
(4)--name 容器名称
具体细节参考官方文档:https://docs.docker.com/engine/reference/run/
4.其他docker常用命令
(1)通过[docker commit CONTAINER_ID newImageName]保存对镜像的修改,CONTAINER_ID可以通过docker ps查看
(2)通过[docker save -o 文件名 镜像名] 将镜像存储至磁盘,例如docker save -o tensorflow.tar tensorflow/tensorflow:1.8.0-devel-gpu-py3
(3)通过[docker load --input 文件名] 从磁盘导入镜像,例如docker load --input tensorflow.tar
(4)容器一旦退出里面的信息就都会被清除,若不想保存修改又不想丢失信息,那么可以CTRL+P+Q让容器在后台运行,然后通过docker attach CONTAINER_ID重新连接进容器
Ubuntu docker安装、验证、卸载的更多相关文章
- ubuntu下安装与卸载qt的方法
http://blog.csdn.net/huyisu/article/details/24014407 ubuntu下安装与卸载qt的方法 分类: linux 2014-04-18 14:20 18 ...
- Ubuntu软件安装与卸载
ubuntu软件安装与卸载 更新Ubuntu软件下载地址 1. 寻找国内镜像源 所谓的镜像源:可以理解为提供下载软件的地方,比如Android手机上可以下载软件的91手机助手:iOS手机上可以下载软件 ...
- Docker安装和卸载
一:卸载旧版本 老版本的Docker被称为docker或docker-engine.如果安装了这些,请卸载它们以及相关的依赖项. $ sudo yum remove docker \ docker-c ...
- Docker 安装与卸载
Docker卸载与安装 卸载旧的版本 卸载 yum -y remove docker-ce docker-cli-io containerd.io rm -rf var /var/lib/docker ...
- docker安装与卸载
文章转自:https://www.cnblogs.com/yufeng218/p/8370670.html (EE安装) https://blog.csdn.net/jxyzh11/article/ ...
- ubuntu Docker安装部署Rancher
一.Rancher简介 Rancher是一个开源的企业级容器管理平台.通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台.Rancher提供了在生产环境中使用的管理Dock ...
- Ubuntu Docker 安装和配置 GitLab CI 持续集成
相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runne ...
- ubuntu docker安装与部署java,mysql,nginx镜像
docker 安装与部署java,mysql,nginx docker 配置 安装docker $ sudo apt-get remove docker docker-engine docker.io ...
- docker 安装 运行 卸载
一.卸载docker 安装时使用什么工具安装的docker就用什么工具卸载docker: 1.yum卸载docker 查看已安装的docker yum list installed | grep do ...
- Ubuntu下安装与卸载Nginx
1.Ubuntu下安装Nginx比较简单 敲入下列命令即可: sudo apt-get update sudo apt-get install nginx 2.Ubuntu下卸载,稍不注意就会入坑 s ...
随机推荐
- [OpenCV实战]9 使用OpenCV寻找平面图形的质心
目录 1 名词解释 2 在OpenCV中查找Blob质心的步骤 3 图像多个blob下的质心获取 4 参考 在中学,我们学习了几何的中各种平面图形.找到标准平面图形的中心(几何中心)比较容易,如圆形, ...
- 迁移学习(IIMT)——《Improve Unsupervised Domain Adaptation with Mixup Training》
论文信息 论文标题:Improve Unsupervised Domain Adaptation with Mixup Training论文作者:Shen Yan, Huan Song, Nanxia ...
- jQuery查找标签、操作标签、事件和动画效果,Bootstrap页面框架的介绍和使用讲解
今日内容 jQuery查找标签 1.基本选择器: $('#d1') id选择器 $('.c1') class选择器 $('div') 标签选择器 2.组合选择器: $('div#d1') 查找id是d ...
- npm 中设置环境NODE_ENV变量,判断失败打印process.env.NODE_ENV确实是"development",但是判断process.env.NODE_ENV === "development" 是false
通过package.json 的scripts脚本 修改NODE_ENV的值来区分开发环境和生产环境. "scripts": { "build": " ...
- OpenMP 线程同步 Construct 实现原理以及源码分析(下)
OpenMP 线程同步 Construct 实现原理以及源码分析(下) 前言 在上面文章当中我们主要分析了 flush, critical, master 这三个 construct 的实现原理.在本 ...
- Java 进阶P-3.1+P-3.2
记事本的例子 容器类有两个类型: 容器的类型 元素的类型 泛型容器类 泛型 泛型其实质就是将数据的类型参数化.通过为类.接口.及方法设置类型参数来定义泛型.泛型使一个类或一个方法可在多种不同类型的对象 ...
- C#代码整洁之道读后总结与感想
1. 基本信息 C#代码整洁之道:代码重构与性能提升 ,英文名为Clean Code in C#. 作者:[英] 詹森·奥尔斯(Jason Alls) 著,刘夏 译 机械工业出版社,2022年4月出版 ...
- 力扣---1148. 文章浏览 I
Views 表:+---------------+---------+| Column Name | Type |+---------------+---------+| article_i ...
- python字典生成式,列表生成式
list1 = [1,2,3,4,5] list2 = ['a','b','c','d','e'] {k: v for k, v in zip(list1, list2)} # {1:'a',2:'b ...
- MySQL数据库报1055错误
有点坑啊,当初装MySQL数据库的时候没有整配置文件,结果MySQL报1055错误的时候,网上的解决办法都说如果需要永久生效的话,只能通过改配置文件实现,but,我没有配置文件,蜜汁尴尬啊 1.已安装 ...