CentOS7安装Docker

目录

前言

1. CentOS7安装Docker

1.1 卸载(可选)

1.2 安装Docker

1.3 启动Docker

1.4 配置镜像加速

2. CentOS7安装DockerCompose

2.1 下载

2.2 修改文件权限

2.3 Base自动补全命令

3. Docker镜像仓库

3.1 简化版镜像仓库

3.2 带有图形化界面版本

3.3 配置Docker信任地址

 4. 软件及文件分享


前言

Docker分为CE和EE两大版本。CE即社区版(免费,支持周期7个月),EE即企业版,强调安全,付费使用,支持周期24个月。

Docker CE分为stable、test和nightly三个更新频道。

官网上有各种环境下的安装指南,这里主要介绍Docker CE在CentOS7上的安装。

本文用的所有软件,都可以在最后分享的百度网盘里下载。

1. CentOS7安装Docker

Docker CE支持64位版本CentOS7,并且要求内核版本不低于3.10,CentOS7满足最低内的要求,所以我们在CentOS7安装Docker。

虚拟机开机的时候可以看到CentOS7的版本号,如图:

如果你已经进入虚拟机,也可以执行下面的命令,查看CentOS7的版本信息: 

hostnamectl

1.1 卸载(可选)

如果之前安装过旧版本的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

如果你没有安装过的话,就会出现下面的图片样子:

1.2 安装Docker

 首先需要大家虚拟机联网,安装yum工具:

yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken
  • yum install -y:这是yum的安装命令,-y参数表示自动回答"yes"以确认安装。

  • yum-utils:这是一组工具包,提供了yum-config-manager等工具。

  • device-mapper-persistent-data:这是Device Mapper存储驱动必须的包。

  • lvm2:这是逻辑卷管理器必须的包。

  • --skip-broken:这个参数表示跳过所有破损的依赖。

执行完成之后,会显示

然后更新本地镜像源:

# 设置docker镜像源
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast
  • --add-repo:添加阿里云的镜像源
  • sed -i:将docker-ce.repo镜像仓库配置文件的镜像修改成阿里镜像
  • yum makecache fast:快速生成本地缓存

执行之后像这样:

然后输入命令,安装docker ce版本:

yum install -y docker-ce

 docker-ce为社区免费版本。稍等片刻,docker即可安装成功:

1.3 启动Docker

Docker应用需要用到各种端口,逐一去修改防火墙设置非常麻烦。因此建议大家在学习阶段,直接关闭防火墙。

学习阶段,启动docker前,一定要关闭防火墙后!!

学习阶段,启动docker前,一定要关闭防火墙后!!

学习阶段,启动docker前,一定要关闭防火墙后!!

重要的事情说三遍。

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
# 查看防火墙状态
systemctl status firewalld

这样就是防火墙已经关闭。 

然后通过命令启动docker:

systemctl start docker  # 启动docker服务

systemctl stop docker  # 停止docker服务

systemctl restart docker  # 重启docker服务

然后输入命令,可以查看docker版本:

docker -v

这就是已经启动成功:

1.4 配置镜像加速

docker官方镜像仓库网速较差,我们需要设置国内镜像服务:

参考阿里云的镜像加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

# 在etc目录下创建一个docker文件夹
sudo mkdir -p /etc/docker

# 在docker目录下新建一个daemon.json文件,然后将后续所有的内容写入文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://0gc6me8r.mirror.aliyuncs.com"]
}
EOF

# 重新加载daemo文件
sudo systemctl daemon-reload

# 重启docker
sudo systemctl restart docker

 都执行完成之后,如下图:

如果,你想看看,daemon文件是否写入,可以执行下面命令:

cat /etc/docker/daemon.json

下面这样就是写入成功:

2. CentOS7安装DockerCompose

Docker Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose可以使用YAML文件来配置应用程序所需的所有服务。然后,使用一个命令,就可以从YAML文件配置中创建并启动所有服务。

2.1 下载

 使用curl命令下载:

# 安装
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  •  curl -L:当请求一个 URL 返回 301 之类的重定向响应时,可以使用 -L 参数来自动跟踪重定向。curl 默认不跟随重定向。这里是重定向下载docker compose的1.23.1版本。
  • uname-s:显示操作系统名称
  • uname-m:显示电脑类型

如果下载太慢,或者下载失败, 可以从我文章最后的网盘里下载。上传到/usr/local/bin/目录。

下载完可以在/usr/local/bin/目录下看见:

2.2 修改文件权限

修改文件权限:

# 修改权限
chmod +x /usr/local/bin/docker-compose

2.3 Base自动补全命令

# 补全命令
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

如果像我这里访问被拒绝,将raw.githubusercontent.com的IP地址添加到 hosts文件:

echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts

将 raw.githubusercontent.com 映射到 IP 地址 199.232.68.133,这样就可以绕过可能的 DNS 解析问题,直接访问 GitHub 的 raw 内容服务

然后再重新执行上面的Base补全命令,就可以直接下载了:

3. Docker镜像仓库

在 Docker 生态系统中,镜像仓库(Docker Registry)用于存储和管理 Docker 镜像。你可以选择使用公共仓库,比如 Docker Hub,也可以搭建私有的 Docker Registry,方便自己团队或组织内部使用。搭建镜像仓库可以基于Docker官方提供的DockerRegistry来实现。

官方地址:https://hub.docker.com/_/registry

3.1 简化版镜像仓库

Docker官方的Docker Registry是一个基础版本的Docker镜像仓库,具备仓库管理的完整功能,但是没有图形化界面。

搭建方式比较简单,命令如下:

docker run -d \
    --restart=always \
    --name registry	\
    -p 5000:5000 \
    -v registry-data:/var/lib/registry \
    registry
  • -d:后台运行容器
  • --restart=always:设置容器总是在Docker启动时重新启动
  • --name registry:为容器指定一个名字,这里是registry
  • -p 5000:5000:将主机的5000端口映射到容器的5000端口
  • -v registry-data:/var/lib/registry:挂载了一个数据卷registry-data到容器内的/var/lib/registry 目录,用于持久化镜像数据。这是私有镜像库存放数据的目录
  • registry:使用的镜像名称

访问:http://YourIp:5000/v2/_catalog 可以查看当前私有镜像中包含的镜像。

3.2 带有图形化界面版本

使用DockerCompost部署带有图像界面的DockerRegistry。

安装之前一定要检查docker和dockerCompose是不是已经正确安装好了。

docker --version
docker-compose --version

都能查询到版本信息,再往下执行,我这里踩了坑。应该是docker-compose没有正确安装,所以后面的图形化界面一直无法访问。

在/etc/目录下,创建registry-ui目录:

mkdir registry-ui

创建docker-compose.yml文件:

touch docker-compose.yml

编辑docker-compose.yml文件,添加下面内容:

version: '3.0'
services:
  registry:
    image: registry
    volumes:
      - ./registry-data:/var/lib/registry
  ui:
    image: joxit/docker-registry-ui:static
    ports:
      - 8080:80
    environment:
      - REGISTRY_TITLE=我欲扶摇九万里私有仓库
      - REGISTRY_URL=http://registry:5000
    depends_on:
      - registry

在 registry-ui 目录下运行 docker-compose 命令来执行docker-compose.yml配置文件启动容器:

docker-compose up -d

3.3 配置Docker信任地址

我们的私服采用的是http协议,默认不被Docker信任,所以需要做一个配置:

# 打开要修改的文件
vi /etc/docker/daemon.json
# 添加内容:
"insecure-registries":["http://你的虚拟机IP:8080"]
# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker

打开网址:

 4. 软件及文件分享

链接: https://pan.baidu.com/s/1WeI1BgoGSr09eMfqKlCDVA?pwd=1234

提取码: 1234

  • 9
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值