Centos7 Docker安装

Docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 LinuxWindows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
在这里插入图片描述
一个完整的Docker有以下几个部分组成:

  1. DockerClient客户端
  2. Docker Daemon守护进程
  3. Docker Image镜像
  4. DockerContainer容器

​ ​ ​ ​ ​ ​Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。

​ ​ ​ ​ ​ Docker自2013年以来非常火热,无论是从 github 上的代码活跃度,还是Redhat在RHEL6.5中集成对Docker的支持, 就连 Google 的 Compute Engine 也支持 docker 在其之上运行。

​ ​ ​ ​ ​ Docker是供开发人员和系统管理员 使用容器构建,运行和共享应用程序的平台。使用容器来部署应用程序称为容器化。容器不是新的,但用于轻松部署应用程序的容器却是新的。

容器化越来越受欢迎,因为容器是:

  • 灵活:即使最复杂的应用程序也可以容器化。
  • 轻量级:容器利用并共享主机内核,在系统资源方面比虚拟机效率更高。
  • 可移植性:您可以在本地构建,部署到云并在任何地方运行。
  • 松散耦合:容器是高度自给自足并封装的容器,使您可以在不破坏其他容器的情况下更换或升级它们。
  • 可扩展:您可以在数据中心内增加并自动分布容器副本。
  • 安全:容器将积极的约束和隔离应用于流程,而无需用户方面的任何配置。
    在这里插入图片描述

Doker架构

​ ​ ​ ​ ​ Docker使用客户端-服务器架构。Docker 客户端与Docker 守护进程进行对话,该守护进程完成了构建,运行和分发Docker容器的繁重工作。Docker客户端和守护程序可以 在同一系统上运行,也可以将Docker客户端连接到远程Docker守护程序。Docker客户端和守护程序在UNIX套接字或网络接口上使用REST API进行通信。
在这里插入图片描述

一、Centos7-安装Docker

1、环境准备

1、需要Linux基础

2、Centos7

3、使用Xshell远程连接服务器

2、查看服务器版本

# 系统内核必须在3.10以上
[root@bogon ~]# uname -r
3.10.0-693.el7.x86_64

# 查看系统配置
[root@bogon /]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

DockerAPI手册:https://docs.docker.com/

支持Centos7及以上版本
在这里插入图片描述

# 卸载旧的docker
$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

1.1、安装方法

您可以根据需要以不同的方式安装Docker Engine:

  • 大多数用户会 设置Docker的存储库并从中进行安装,以简化安装和升级任务。这是推荐的方法。
  • 一些用户下载并手动安装 RPM软件包, 并完全手动管理升级。这在诸如在无法访问互联网的空白系统上安装Docker的情况下非常有用。
  • 在测试和开发环境中,一些用户选择使用自动 便利脚本来安装Docker。

1.2、使用存储库安装

​ ​ ​ ​ ​在新主机上首次安装Docker Engine之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。

1.2.1、设置存储库

安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

# 下载需要的安装包
$ sudo yum install -y yum-utils

# 设置镜像地址
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo  #默认使用国外镜像地址
    
#设置国内阿里云镜像地址
$ sudo yum-config-manager \
    --add-repo \  
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

在这里插入图片描述

1.3、安装Docker引擎

# 安装之前先进行跟新yum
yum makecache fast

# 安装docker引擎 docker-ce 社区版本  docker-ee/docker-ee-eli 企业版
$ sudo yum install docker-ce docker-ce-cli containerd.io

在安装之前最好跟新一下yum软件指令

要安装特定版本的Docker Engine,请在存储库中列出可用版本,然后选择并安装:
一个。列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序,并被截断:

$ yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7                    docker-ce-stable

# VERSION_STRING 版本指定安装
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

# 启动docker
$ sudo systemctl start docker

查看docker启动

$ sudo  docker version
Client:
 Version:         1.13.1
 API version:     1.26
 Package version: docker-1.13.1-108.git4ef4b30.el7.centos.x86_64
 Go version:      go1.10.3
 Git commit:      4ef4b30/1.13.1
 Built:           Tue Jan 21 17:16:25 2020
 OS/Arch:         linux/amd64

Server:
 Version:         1.13.1
 API version:     1.26 (minimum version 1.12)
 Package version: docker-1.13.1-108.git4ef4b30.el7.centos.x86_64
 Go version:      go1.10.3
 Git commit:      4ef4b30/1.13.1
 Built:           Tue Jan 21 17:16:25 2020
 OS/Arch:         linux/amd64
 Experimental:    false

二、docker-Helloword

​ ​ ​ ​ ​ 在我们安装docker只有我们首先做的就是去测试一下我们的docker的helloword程序、在docker中启动一个镜像使用run命令即可。

2.1、运行hello-world

$ sudo docker run hello-world

Unable to find image 'hello-world:latest' locally   # 没有找到hello-world:latest镜像
Trying to pull repository docker.io/library/hello-world ...  #远程拉取镜像
latest: Pulling from docker.io/library/hello-world     # 拉取地址
0e03bdcc26d7: Pull complete 
Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1
Status: Downloaded newer image for docker.io/hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
   (amd64)
3. The Docker daemon created a new container from that image which runs the
   executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
   to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

在这里插入图片描述

2.2、查看拉取的镜像

# 查看当前镜像
docker images

在这里插入图片描述

三、卸载Docker

在我们不需要Docker的时候需要卸载、官方也给我们提供了最通许的方法

1、卸载Docker Engine,CLI和Containerd软件包:

$ sudo yum remove docker-ce docker-ce-cli containerd.io

2、主机上的映像,容器,卷或自定义配置文件不会自动删除。要删除所有图像,容器和卷:

$ sudo rm -rf /var/lib/docker

四、阿里云镜像加速

1、进入阿里云、容器镜像管理
在这里插入图片描述

2、找到镜像加速器
在这里插入图片描述

3、配置加速器

1、CentOS的配置方式略微复杂,需要先将默认的配置文件(/lib/systemd/system/docker.service)

2、复制到 /etc/systemd/system/docker.service。

3、然后再将加速器地址添加到配置文件的启动命令中,之后重启Docker即可。

sudo cp -n /lib/systemd/system/docker.service /etc/systemd/system/docker.service
sudo sed -i "s|ExecStart=/usr/bin/docker daemon|ExecStart=/usr/bin/docker daemon 
			--registry-mirror=<your accelerate address>|g" /etc/systemd/system/docker.service
sudo sed -i "s|ExecStart=/usr/bin/dockerd|ExecStart=/usr/bin/dockerd 
			--registry-mirror=<your accelerate address>|g" /etc/systemd/system/docker.service
sudo systemctl daemon-reload
sudo service docker restart   

4、docker配置镜像加速地址修改

可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

$sudo mkdir -p /etc/docker
$sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["配置你的加速地址"]
}
EOF
$sudo systemctl daemon-reload
$sudo systemctl restart docker 

5、查看是否配置成功

[root@bogon docker]# cat /etc/docker/daemon.json 

{
   "registry-mirrors": ["配置你的加速地址"]
}

6、重新启动docker

# 重新启动服务
systemctl daemon-reload

# 重新启动docker
systemctl restart docker
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值