卸载Docker CE

卸载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

2.3 安装nvidia-docker2安装包
sudo apt-get update
sudo 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安装、验证、卸载的更多相关文章

  1. ubuntu下安装与卸载qt的方法

    http://blog.csdn.net/huyisu/article/details/24014407 ubuntu下安装与卸载qt的方法 分类: linux 2014-04-18 14:20 18 ...

  2. Ubuntu软件安装与卸载

    ubuntu软件安装与卸载 更新Ubuntu软件下载地址 1. 寻找国内镜像源 所谓的镜像源:可以理解为提供下载软件的地方,比如Android手机上可以下载软件的91手机助手:iOS手机上可以下载软件 ...

  3. Docker安装和卸载

    一:卸载旧版本 老版本的Docker被称为docker或docker-engine.如果安装了这些,请卸载它们以及相关的依赖项. $ sudo yum remove docker \ docker-c ...

  4. Docker 安装与卸载

    Docker卸载与安装 卸载旧的版本 卸载 yum -y remove docker-ce docker-cli-io containerd.io rm -rf var /var/lib/docker ...

  5. docker安装与卸载

    文章转自:https://www.cnblogs.com/yufeng218/p/8370670.html  (EE安装) https://blog.csdn.net/jxyzh11/article/ ...

  6. ubuntu Docker安装部署Rancher

    一.Rancher简介 Rancher是一个开源的企业级容器管理平台.通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台.Rancher提供了在生产环境中使用的管理Dock ...

  7. Ubuntu Docker 安装和配置 GitLab CI 持续集成

    相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runne ...

  8. ubuntu docker安装与部署java,mysql,nginx镜像

    docker 安装与部署java,mysql,nginx docker 配置 安装docker $ sudo apt-get remove docker docker-engine docker.io ...

  9. docker 安装 运行 卸载

    一.卸载docker 安装时使用什么工具安装的docker就用什么工具卸载docker: 1.yum卸载docker 查看已安装的docker yum list installed | grep do ...

  10. Ubuntu下安装与卸载Nginx

    1.Ubuntu下安装Nginx比较简单 敲入下列命令即可: sudo apt-get update sudo apt-get install nginx 2.Ubuntu下卸载,稍不注意就会入坑 s ...

随机推荐

  1. [常用工具] PyAutoGUI使用教程

    PyAutoGUI使用教程 目录 PyAutoGUI使用教程 1 基础知识 2 一般函数 3 故障保险 4 鼠标函数 4.1 鼠标移动 4.2 鼠标拖动 4.3 鼠标单击 4.4 鼠标滚动 4.5 鼠 ...

  2. Pytorch基础-tensor数据结构

    torch.Tensor Tensor 数据类型 Tensor 的属性 view 和 reshape 的区别 Tensor 与 ndarray 创建 Tensor 传入维度的方法 参考资料 torch ...

  3. java下载网络文件的N种方式

    java下载网络文件的N种方式 通过java api下载网络文件的方法有很多,主要方式有以下几种: 1.使用 common-io库下载文件,需要引入commons-io-2.6.jar public ...

  4. salesforce零基础学习(一百二十四)Postman 使用

    本篇参考: Salesforce 集成篇零基础学习(一)Connected App salesforce 零基础学习(三十三)通过REST方式访问外部数据以及JAVA通过rest方式访问salesfo ...

  5. SOFAJRaft源码阅读-模块启动过程

    本篇文章旨在分析SOFAJRaft中jraft-example模块的启动过程,由于SOFAJRaft在持续开源的过程中,所以无法保证示例代码永远是最新的,要是有较大的变动或者纰漏.错误的地方,欢迎大家 ...

  6. 如何将WebAssembly优化到2MB?

    Blazor WebAssembly加载优化方案 对于Blazor WebAssembly加载方案的优化是针对于WebAssembly首次加载,由于BlazorWebAssembly是在首次加载的时候 ...

  7. 如何使用 JuiceFS 创建 WebDAV 共享

    WebDAV 是一种基于 HTTP 的文件共享协议,最初被设计用于多用户文档协作编辑的场景,也被广泛应用在基于互联网的文件存储.数据同步等网盘类应用场景. 手机端和 PC 端有大量的应用内置了对 We ...

  8. 结构型模式 - 组合模式Composite Pattern

    学习而来,代码是自己敲的.也有些自己的理解在里边,有问题希望大家指出. 组合模式的定义与特点  组合(Composite Pattern)模式的定义:有时又叫作整体-部分(Part-Whole)模式, ...

  9. 【学习笔记】XR872 Audio 驱动框架分析

    Xradio Sdk 的 Audio 驱动框架和 Linux 的 ASOC 驱动框架非常相似,只不过简化了很多. 驱动和芯片之间的关系图 下面的 SOC 表示的是 XR872 芯片,这里以 AC107 ...

  10. 遗传算法求TSP问题

    一.实验内容及目的 本实验以遗传算法为研究对象,分析了遗传算法的选择.交叉.变异过程,采用遗传算法设计并实现了商旅问题求解,解决了商旅问题求解最合适的路径,达到用遗传算法迭代求解的目的.选择.交叉.变 ...