Docker

搭建深度学习环境之一:安装Docker

2021-05-24  本文已影响0人  星光下的胖子

Docker并非是一个通用的容器工具,它依赖于已存在并运行的Linux内核环境。如果想在其他系统上部署Docker,就必须先安装一个Linux环境(可使用VMware Workstation或Oracle VM Virtualbox虚拟机软件),然后再安装Docker。

其实,为了其他系统更方便安装和使用Docker,Docker也推出了针对Windows 10和MaxOS系统的Docker Desktop,针对Win7、Win8系统的Docker Toolbox。它们本质上也是先在虚拟机中安装Linux然后再安装Docker的方法,Docker Desktop需要开启Hyper-V(微软开发的虚拟机),Docker Toolbox工具集包含了Oracle VM Virtualbox虚拟机。启动Docker Desktop或Docker Toolbox,相当于启动装有Docker的Linux系统。

本文讲解在Ubuntu系统上安装Docker的方法。其他系统可参考「Docker 教程」

一、Ubuntu 系统 Docker 安装

1.1前提准备

Docker 要求 Ubuntu 系统的内核版本高于3.10,可用 uname -r 命令查看当前内核版本。
Ubuntu 系统内核版本 4.10.0 支持 Docker,可以进行 Docker 的安装操作,如下图:

1.2下载并安装 Docker

执行 wget -qO- https://get.docker.com/ | sh 命令,输入主机密码后,就会下载脚本并安装 Docker 及其依赖包,如下图:

等待几分钟,出现下图所示的提示信息,说明安装成功。
(提示信息表明,root 用户可以使用 Docker,当前用户 liyunfei 还不可使用 Docker。必须先执行 sudo usermod -aG docker liyunfei 授权命令,将 liyunfei 用户添加到 docker 组中,并 退出系统重新登录,方可生效。)

执行 sudo su - 命令切换到 root 用户下,执行 docker ps 命令成功。
然后我们执行 sudo usermod -aG docker liyunfei 命令,并退出系统。
(如果 Docker 服务没有起来,可执行 sudo service docker start 启动Docker服务。)


重新登录系统,在 liyunfei 用户下执行 docker ps 命令成功,如下图:

1.3测试运行 hello world

使用 docker run hello-world 命令,下载 hello-world:latest 镜像包并启动容器,测试成功如图:

二、镜像加速器配置

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置国内镜像加速器。
Docker 官方和国内很多云服务商都提供了国内加速器服务,例如:

我们以 https://reg-mirror.qiniu.com/ 为例,介绍如何配置镜像加速器。

首先,在 /etc/docker/daemon.json中写入如下内容,指定镜像加速器的服务地址:

{
  "registry-mirrors": [
    "https://reg-mirror.qiniu.com/"
  ]
}

注意:一定要保证该文件符合 json 规范,否则 Docker 将不能启动。

其次,添加 daemon.json 后,重新启动 Docker 服务。

sudo systemctl daemon-reload
sudo systemctl restart docker

演示案例如下图所示:

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://reg-mirror.qiniu.com/"]
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

三、Docker 常用命令

3.1常用命令列表1
docker ps -a  #列出所有的容器
docker ps  #列出所有活跃的容器
docker ps -l  #列出最近创建的容器
docker info  #查看 Docker 的系统信息
docker search ubuntu  #通过 search 子命令搜索 Docker Hub 上的镜像
docker run -it ubuntu  #启动容器,并进入交互模式
docker rm 容器ID  #删除容器
exit  #退出容器

示例如下图:

docker ps -adocker psdocker ps -la 命令:

docker run -it ubuntuexit 命令:

3.2常用命令列表2
docker pull tomcat:9-jre8-slim #用pull命令将镜像下载下来
docker push 172.18.232.50/si-tech/tomcat:9-jre8-slim #用push命令将本地镜像上传到镜像仓库
docker images  #列出本地镜像
docker image ls  #只显示顶层镜像
docker image ls -a  #显示包括中间层镜像在内的所有镜像,需要加-a参数
docker image ls tomcat  #根据条件列出部分镜像
docker rmi 镜像ID  #根据镜像ID删除镜像
docker rmi <仓库名>:<标签>  #根据镜像名称删除镜像

docker export <CONTAINER ID> > /home/export.tar  #Export命令用于持久化容器(不是镜像)
docker save busybox-1 > /home/save.tar  #Save命令用于持久化镜像(不是容器)
docker import - busybox-1-export:latest  #与docker export对应,导入压缩包生成镜像(可重新指定镜像名字)
docker load < /home/save.tar  #与docker save对应,导入压缩包生成镜像

示例如下图:
docker pull tomcat:9-jre8-slim 命令:

docker images 命令:

docker save tomcat:9-jre8-slim > ./tomcat-9.tar 命令:

上一篇下一篇

猜你喜欢

热点阅读