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 ...
随机推荐
- cmd窗口中java命令报错。错误:找不到或无法加载主类 java的jdk安装过程中踩过的坑
错误: 找不到或无法加载主类 HelloWorld 遇到这个问题时,我尝试过网上其他人的做法.有试过添加classpath,也有试过删除classpath.但是依然报错,这里javac可以编译通过,说 ...
- Spark详解(05-1) - SparkCore实战案例
Spark详解(05-1) - SparkCore实战案例 数据准备 1)数据格式 本项目的数据是采集电商网站的用户行为数据,主要包含用户的4种行为:搜索.点击.下单和支付. (1)数据采用_分割字段 ...
- 【Dubbo3终极特性】「流量治理体系」一文教你如何通过Dubbo-Admin实现动态进行流量隔离机制
背景信息 如果一个应用有多个版本在线上同时运行,部署在不同环境中,如日常环境和特殊环境,则 可以使用标签路由对不同环境中的不同版本进行流量隔离,将秒杀订单流量或不同渠道订单流量路由到特殊环境,将正常的 ...
- Flutter踩坑日记,自己挖的坑,哭着也要走出来。
1. 系统运行缓慢,疯狂点击右上角小X,再次启动后Emulator启动黑屏,关机重启也不好使,其他 Emulator也无法使用. 执行以下步骤: 第一检查内存是否够用 啊 不够用了 那么 [解决方法 ...
- three.js一步一步来--如何用线画出一个面--网格板子
网格板子~~~ <template> <div style="width:1000px; height:800px"> <p>网格布局</ ...
- Random概述和基本使用-Random生成指定范围的随机数
Random概述和基本使用 什么是Random类 此类的实例用于生成伪随机数. 例如,以下代码使用户能够得到一个随机数: Random r = new Random(); int i = r.next ...
- C# 线程同步查漏补缺
同步构造 当线程 A 在等待一个同步构造,另一个线程 B 持有构造一直不释放,那么就会导致线程 A 阻塞.同步构造有用户模式构造和内核模式构造. 用户模式构造通过 CPU 指令来协调线程,所以速度很快 ...
- 12月12日内容总结——Django之数据增删改查、Django请求生命周期流程图、Django路由层(路由匹配、转换器、正则匹配)、反向解析
目录 一.可视化界面之数据增删改查 二.django请求生命周期流程图 三.django路由层 1.路由匹配 2.转换器 3.正则匹配 不同版本的区别 正则匹配斜杠导致的区别 4.正则匹配的无名有名分 ...
- 后台管理系统带关闭的选项卡(多标签页)功能 适配bootstrap3和4 Bootstrap Hover Dropdown
眼看着是不是很熟悉,其实基本大部门后台管理系统都有这个功能,使用iframe实现展示标签页面. 主要功能:标签页点击,添加标签页,向左滚动标签页,向右滚动标签页,刷新当前标签页,关闭当前标签页,关闭其 ...
- 滴水 1.c++类 this指针 笔记+指针
1.结构体带参数传递 将结构体的数据压入堆栈中 然后进入函数内进行处理 2.结构体指针传递 将this指针压入进去 来查找 a b数据 3.函数可以放在结构体里面,也可以放在结构体外面 放入进去后 但 ...