centos8 安装docker_如何在RHEL8或者CentOS8系统上安装Docker

请关注本头条号,每天坚持更新原创干货技术文章。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

1. 前言

本文主要讲解如何在RHEL8或者CentOS8系统上安装Docker。本教程将指导您如何在RHEL8或CentOS8。Docker在RHEL8上没有得到官方支持,因为它已经被红帽工具-buildah和podman所取代。我们将在另一篇文章中讨论buildah和podman。

但如果你每天都使用Docker,却不能立即切换到buildah和podman,那该怎么办呢?不要担心,因为有办法安装Docker和Docker组成的RHEL8或CentOS8。Docker是一个允许您在容器中创建、部署和运行应用程序的工具。容器允许开发人员将应用程序与其依赖项打包,并将其作为单个包发出。容器通常用于微服务环境。

2ac05bb83d571a1f64e0129d3aecd4ed.png

如何在RHEL8或者CentOS8系统上安装Docker

Docker部件和术语
在深入了解安装和使用示例之前,我们需要澄清一些Docker特有的术语。下面是Docker生态系统中常用的术语。

  • Docker daemon: 这也被称为Docker引擎,它是一个后台进程,运行在负责构建和运行容器的主机系统上。
  • Docker Client: 这是用户用来与Docker守护进程交互的命令行工具。
  • Docker Image: 镜像是一个不可变的文件,本质上是容器的快照。docker镜像具有运行应用程序所需的文件系统和应用程序依赖项。
  • Docker container: 这是一个正在运行的docker镜像实例,带有一个应用程序及其依赖项。每个容器都有唯一的进程ID,并且与其他容器隔离。容器共享的唯一东西是内核。
  • Docker registry: 这是一个负责管理Docker容器镜像的存储和交付的应用程序。它可以是私有的,也可以是公共的。

2. 在RHEL8/CentOS8上安装Docker CE

到目前为止,我们已经介绍了docker的介绍和术语。我们应该准备好在RHEL8或CentOS8上安装Docker CE。我们将开始安装Docker。

4906d6eb16440daec27684dcdfbc6a08.png

在RHEL8/CentOS8上安装Docker CE

有两个版本的Docker可用。

Community Edition (CE): 对于希望开始使用Docker并尝试基于容器的应用程序的个人开发人员和小型团队来说,这是一个理想的选择。
Enterprise Edition (EE): 为企业开发和IT团队设计,这些团队在生产环境中构建、交付和运行业务关键型应用程序。

Docker企业版需要一个活动许可证才能使用。在本指南中,我们将在RHEL8或CentOS8上安装Docker CE。在安装Docker库之前,让我们先添加它。

sudo curl  https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo

这个命令将把Docker存储库文件下载到/etc/yum.repos.d/docker-ce.repo。让我们更新RPM索引缓存。

``` bash
sudo yum makecache

Updating Subscription Management repositories.Updating Subscription Management repositories.Docker CE Stable - x86_64                                                                                             6.1 kB/s |  14 kB     00:02    Red Hat Enterprise Linux 8 for x86_64 - AppStream Beta (RPMs)                                                          1.8 kB/s | 4.1 kB     00:02    Red Hat Enterprise Linux 8 for x86_64 - BaseOS Beta (RPMs)                                                             3.5 kB/s | 4.1 kB     00:01    Metadata cache created.最后,通过在终端中运行下面的命令来安装Docker CE。

bash
sudo dnf -y install docker-ce --nobest

启动并使Docker服务在引导时启动。

bash
sudo systemctl enable --now docker

docker服务状态应该指示正在运行。

bash
systemctl status docker

 ● docker.service - Docker Application Container Engine    Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)    Active: active (running) since Sun 2019-03-10 09:52:54 EAT; 29s ago      Docs: https://docs.docker.com  Main PID: 2875 (dockerd)     Tasks: 21 (limit: 11510)    Memory: 48.3M    CGroup: /system.slice/docker.service            ├─2875 /usr/bin/dockerd            └─2882 docker-containerd --config /var/run/docker/containerd/containerd.toml Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.261477553+03:00" level=info msg="ClientConn switching balancer to "pick_first""> Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.261506651+03:00" level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc> Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.261707466+03:00" level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc> Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.261722124+03:00" level=info msg="Loading containers: start." Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.637205789+03:00" level=info msg="Default bridge (docker0) is assigned with an IP > Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.835734889+03:00" level=info msg="Loading containers: done." Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.857760401+03:00" level=info msg="Docker daemon" commit=d7080c1 graphdriver(s)=ove> Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.858095579+03:00" level=info msg="Daemon has completed initialization" Mar 10 09:52:54 rhel8.local dockerd[2875]: time="2019-03-10T09:52:54.915887172+03:00" level=info msg="API listen on /var/run/docker.sock" Mar 10 09:52:54 rhel8.local systemd[1]: Started Docker Application Container Engine.`docker group`被创建,但是没有用户被添加到组中。将您的用户添加到此组以运行不带sudo的docker命令。

bash
sudo usermod -aG docker

bash
id USER¨G5GbashidUSER

uid=1000(jmutai) gid=1000(jmutai) groups=1000(jmutai),10(wheel),984(docker)退出并再次登录使用Docker而不使用sudo。安装的Docker版本可以通过以下方式检查:

bash
newgrp docker

```bashdocker version

Client:
Version: 18.06.3-ce
API version: 1.38
Go version: go1.10.3
Git commit: d7080c1
Built: Wed Feb 20 02:26:51 2019
OS/Arch: linux/amd64
Experimental: false

Server:
Engine:
Version: 18.06.3-ce
API version: 1.38 (minimum version 1.12)
Go version: go1.10.3
Git commit: d7080c1
Built: Wed Feb 20 02:28:17 2019
OS/Arch: linux/amd64
Experimental: false

3. 在RHEL8或者CentOS8系统上拉取测试docker镜像

最后一步是在RHEL8或者CentOS8系统上通过下载测试版的docker容器来测试安装。

4906d6eb16440daec27684dcdfbc6a08.png

在RHEL8或者CentOS8系统上

docker pull alpine

Using default tag: latest
latest: Pulling from library/alpine
8e402f1a9c57: Pull complete
Digest: sha256:644fcb1a676b5165371437feaa922943aaf7afcfa8bfee4472f6860aad1ef2a0
Status: Downloaded newer image for alpine:latest

查看已经下载的Docker列表:

docker images

REPOSITORY TAG IMAGE ID CREATED SIZE
alpine latest 5cb3aa00f899 2 days ago 5.53MB
hello-world latest fce289e99eb9 2 months ago 1.84kB

通过从下载的镜像运行alpine容器来验证Docker CE是否正常工作。

docker run -it --rm alpine /bin/sh/ # apk updatefetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gzfetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gzv3.9.2-1-g592d872fb8 [http://dl-cdn.alpinelinux.org/alpine/v3.9/main]v3.9.2-2-ge7dc3349a9 [http://dl-cdn.alpinelinux.org/alpine/v3.9/community]OK: 9754 distinct packages available/ # exit

4. 在RHEL8或者CentOS8上安装Docker Compose

我们已经在RHEL8或者CentOS 8上安装并运行了Docker,现在让我们把档位改为Docker合成。Docker组合是一个用于定义和运行多容器Docker应用程序的工具。

ae841a5a9d83603508cd0e3cfa548018.png

在RHEL8或者CentOS8上安装Docker Compose

应用程序服务是使用组合文件配置的。与运行docker命令不同,从配置创建和启动所有服务只需要一个命令。Docker Compose是用于开发、测试和准备环境以及CI工作流的优秀工具。

5. 在RHEL8或者CentOS 8上下载Docker Compose

请遵循我们在在RHEL8或者CentOS 8 Linux上安装最新Docker Compose的单独指南。

6. 在RHEL8或者CentOS 8上安装Docker UI -可选

如果你需要Docker管理界面,它可以让你轻松地管理不同的Docker主机和容器,请给Portainer一个尝试。它易于安装和使用。

7. 在RHEL8或者CentOS 8上监控Docker containers

可以在RHEL8或者CentOS 8上使用Netdata或Ctop或Prometheus和Grafana等监控工具来监控Docker容器。

8. 总结

通过本文,您应该可以了解到如何在RHEL8或者CentOS8系统上安装Docker或者相关组件了吗?其实组件不多,关键是后面的配置与使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值