背景

最近接手了几个我的项目,发现我的项目的部署基本上都是基于Docker的,幸好在几年前曾经相熟的Docker的根本应用,没有抓瞎。这两年随着云原生的倒退,Docker在云原生中的作用使得它也蓬勃发展起来。

明天这篇文章就带大家一起实现一下在Linux操作系统下Docker的部署过程,珍藏起来,以备不时之需。当然,如果对Docker感兴趣的话,能够间接依据本文的步骤操作起来。终有一天你会享受到Docker的便当与魅力的。

Docker及零碎版本

Docker从17.03版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版)。绝对于社区版本,企业版本强调安全性,但需付费应用。这里咱们应用社区版本即可。

Docker反对64位版本的CentOS 7和CentOS 8及更高版本,它要求Linux内核版本不低于3.10。

查看Linux版本的命令这里举荐两种:lsb_release -acat /etc/redhat-release

lsb_release -a查看成果:

[ ~]$ lsb_release -aLSB Version:    :core-4.1-amd64:core-4.1-noarchDistributor ID:    CentOSDescription:    CentOS Linux release 7.6.1810 (Core)Release:    7.6.1810Codename:    Core

cat /etc/redhat-release查看版本成果:

[~]$ cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)

显然,以后Linux零碎为CentOS7。再查一下内核版本是否不低于3.10。

查看内核版本有三种形式:

  • cat /proc/version
  • uname -a
  • uname -r

三种模式都能够查看到内容版本,比方:

[ ~]$ uname -r3.10.0-1160.45.1.el7.x86_64

能够看到,以后Linux内核版本满足Docker的须要。

Docker的自动化装置

Docker官网和国内daocloud都提供了一键装置的脚本,使得Docker的装置更加便捷。

官网的一键装置形式:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

国内 daocloud一键装置命令:

curl -sSL https://get.daocloud.io/docker | sh

执行上述任一条命令,急躁期待即可实现Docker的装置。

Docker手动装置

手动装置Docker分三步:卸载、设置仓库、装置。

卸载Docker(可选)

第一步,卸载历史版本。这一步是可选的,如果之前装置过旧版本的Docker,能够应用如下命令进行卸载:

yum remove docker \                  docker-client \                  docker-client-latest \                  docker-common \                  docker-latest \                  docker-latest-logrotate \                  docker-logrotate \                  docker-selinux \                  docker-engine-selinux \                  docker-engine \                  docker-ce

设置源仓库

第二步,设置仓库。新主机上首次装置Docker Engine-Community之前,须要设置Docker仓库。尔后可从仓库装置和更新Docker。

在设置仓库之前,需先依照所需的软件包。yum-utils提供了yum-config-manager,并且device mapper存储驱动程序须要device-mapper-persistent-data和lvm2。

$ sudo yum install -y yum-utils \  device-mapper-persistent-data \  lvm2

执行上述命令,装置结束即可进行仓库的设置。应用官网源地址设置命令如下:

$ sudo yum-config-manager \    --add-repo \    https://download.docker.com/linux/centos/docker-ce.repo

通常,官网的源地址比较慢,可将上述的源地址替换为国内比拟快的地址:

  • 阿里云:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 清华大学源:https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

仓库设置结束,即可进行Docker的装置。

Docker装置

执行一下命令,装置最新版本的 Docker Engine-Community 和 containerd。

sudo yum install -y docker-ce docker-ce-cli containerd.io

docker-ce为社区收费版本。稍等片刻,docker即可装置胜利。但装置实现之后的默认是未启动的,须要进行启动操作。

如果不须要docker-ce-cli或containerd.io可间接执行如下命令:

yum install -y docker-ce

至此,实现Docker装置。

Docker启动

启动Docker的命令:

sudo systemctl start docker

通过运行hello-world镜像来验证是否正确装置了Docker Engine-Community。

// 拉取镜像sudo docker pull hello-world// 执行hello-worldsudo docker run hello-world

如果执行之后,控制台显示如下信息,则阐明Docker装置和启动胜利:

[root@iZ8vb8pfb2awsz4qy7vm7qZ ~]# docker run hello-worldHello from Docker!This message shows that your installation appears to be working correctly.……

除了启动Docker,一些其余启动相干的命令:

  • 守护过程重启:systemctl daemon-reload
  • 重启Docker服务:systemctl restart docker / service docker restart
  • 敞开Docker服务:docker service docker stop / docker systemctl stop docker

删除Docker

删除安装包:

yum remove docker-ce

删除镜像、容器、配置文件等内容:

rm -rf /var/lib/docker

Docker其余常见命令

装置实现Docker之后,这里汇总列一下常见的Docker操作命令:

  • 搜寻仓库镜像:docker search 镜像名
  • 拉取镜像:docker pull 镜像名
  • 查看正在运行的容器:docker ps
  • 查看所有容器:docker ps -a
  • 删除容器:docker rm container_id
  • 查看镜像:docker images
  • 删除镜像:docker rmi image_id
  • 启动(进行的)容器:docker start 容器ID
  • 进行容器:docker stop 容器ID
  • 重启容器:docker restart 容器ID
  • 启动(新)容器:docker run -it ubuntu /bin/bash
  • 进入容器:docker attach 容器IDdocker exec -it 容器ID /bin/bash,举荐应用后者。

更多的命令能够通过docker help命令来查看。

小结

本篇文章带大家从头到尾在Linux操作系统上装置了Docker,以及介绍了如何启动、验证及常见的命令。前面如果有机会话,再大家理解一下如何制作Docker镜像,用于CI/CD公布当中。

博主简介:《SpringBoot技术底细》技术图书作者,热爱钻研技术,写技术干货文章。

公众号:「程序新视界」,博主的公众号,欢送关注~

技术交换:请分割博主微信号:zhuan2quan