在CentOS 8上安装Docker CE和Docker Compose RHEL 8
在本教程中,我们将引导我们逐步完成在CentOS 8上安装Docker CE的步骤。 RHEL8. 还介绍了如何在RHEL 8/CentOS 8 Linux上安装Docker Compose。 Docker在RHEL 8上不受正式支持,因为它已被Red Hat工具buildah和podman取代。我们可以了解有关RHEL 8 Linux版本中见证的新功能的更多信息。
但是,如果我们每天都使用Docker并不能立即切换到buildah和podman呢?,不用担心,因为可以在RHEL 8/CentOS 8上安装Docker和Docker Compose。Docker是使我们能够创建,部署和部署工具的工具。并在容器中运行应用程序。容器允许开发人员使用其依赖项打包应用程序,并将其作为单个程序包发送出去。容器通常在微服务环境中使用。
Docker组件/术语
在深入探讨安装和使用示例之前,我们需要澄清一些特定于Docker的术语。以下是Docker生态系统中常用的术语。Docker守护进程:也称为Docker Engine,它是一个在主机系统上运行的后台进程,负责构建和运行容器.Docker Client:这是由Docker所使用的命令行工具用户与Docker守护程序进行交互。Docker镜像:镜像是一个不可变文件,本质上是容器的快照。 Docker镜像具有运行应用程序所需的文件系统和应用程序依赖项。Docker容器:这是具有应用程序及其依赖项的Docker镜像的运行实例。每个容器都有唯一的进程ID,并且与其他容器隔离。容器唯一共享的是Kernel.Docker注册表:这是一个负责管理Docker容器镜像的存储和交付的应用程序。它可以是私人的也可以是公共的。
在CentOS 8上安装Docker CE RHEL 8
到目前为止,我们已经介绍了Docker介绍和术语。我们应该准备在RHEL 8/CentOS 8上安装Docker CE。我们将首先安装Docker,然后安装Docker Compose。
共有两种版本的Docker:社区版(CE):非常适合希望开始使用Docker并尝试基于容器的应用程序的个人开发人员和小型团队企业版(EE):专为企业开发和IT团队设计大规模生产,运输和运行关键业务应用程序。
Docker Enterprise Edition需要有效的许可证才能使用。在本教程中,我们将在RHEL 8上安装Docker CE。让我们先添加Docker存储库,然后再进行安装。
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
这个命令会将Docker仓库文件下载到/etc/yum.repos.d/docker-ce.repo
中。让我们更新RPM索引缓存。
### CentOS 8 ### $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. ### RHEL 8 ### $sudo yum makecache Updating Subscription Management repositories. Docker CE Stable - x86_64 14 kB/s | 3.8 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 33 kB/s | 2.8 kB 00:00 Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs) 29 kB/s | 2.4 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 30 kB/s | 2.4 kB 00:00 Red Hat Satellite Tools 6.6 for RHEL 8 x86_64 (RPMs) 29 kB/s | 2.1 kB 00:00 Metadata cache created.
最后,通过在终端中运行以下命令来安装Docker CE。
sudo yum install docker-ce
如果我们遇到与Podman相关的问题,请允许擦除。
sudo yum install docker-ce --allowerasing
按下键盘上的y键同意安装:
Dependencies resolved. ===================================================================================================================================================================================================== Package Architecture Version Repository Size ===================================================================================================================================================================================================== Installing: docker-ce x86_64 3:19.03.13-3.el8 docker-ce-stable 24 M Installing dependencies: containerd.io x86_64 1.3.7-3.1.el8 docker-ce-stable 29 M replacing runc.x86_64 1.0.0-66.rc10.module+el8.2.1+6465+1a51e8b6 docker-ce-cli x86_64 1:19.03.13-3.el8 docker-ce-stable 38 M libcgroup x86_64 0.41-19.el8 rhel-8-for-x86_64-baseos-rpms 70 k Removing dependent packages: podman x86_64 1.9.3-2.module+el8.2.1+6867+366c07d6 @rhel-8-for-x86_64-appstream-rpms 60 M Transaction Summary ===================================================================================================================================================================================================== Install 4 Packages Remove 1 Package Total download size: 92 M Is this ok [y/N]: y
以及导入GPG密钥。
Total 21 MB/s | 92 MB 00:04 warning: /var/cache/dnf/docker-ce-stable-fa9dc42ab4cec2f4/packages/containerd.io-1.3.7-3.1.el8.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY Docker CE Stable - x86_64 29 kB/s | 1.6 kB 00:00 Importing GPG key 0x621E9F35: Userid : "Docker Release (CE rpm) <theitroad@localhost>" Fingerprint: 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35 From : https://download.docker.com/linux/centos/gpg Is this ok [y/N]: y
启动并启用Docker服务以在启动时启动。
$sudo systemctl enable --now docker Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
泊坞窗服务状态应指示正在运行。
$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 Tue 2017-10-06 17:05:53 EAT; 2min 32s ago Docs: https://docs.docker.com Main PID: 230185 (dockerd) Tasks: 13 Memory: 41.4M CGroup: /system.slice/docker.service └─230185 /usr/bin/dockerd -H fd://--containerd=/run/containerd/containerd.sock
创建了" docker group",但没有用户添加到该组。将用户添加到该组以在不使用sudo的情况下运行docker命令
$sudo usermod -aG docker $USER $id $USER uid=1000(jmutai) gid=1000(jmutai) groups=1000(jmutai),10(wheel),984(docker)
注销并再次登录以使用不带sudo的Docker。可以使用以下方法检查安装的Docker版本:
$newgrp docker $docker version Client: Docker Engine - Community Version: 19.03.13 API version: 1.40 Go version: go1.13.15 Git commit: 4484c46d9d Built: Wed Sep 16 17:02:36 2017 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.13 API version: 1.40 (minimum version 1.12) Go version: go1.13.15 Git commit: 4484c46d9d Built: Wed Sep 16 17:01:11 2017 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.3.7 GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175 runc: Version: 1.0.0-rc10 GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd docker-init: Version: 0.18.0 GitCommit: fec3683
拉测试泊坞窗图片
最后一步是通过下载测试Docker容器来测试安装。
$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 images REPOSITORY TAG IMAGE ID CREATED SIZE alpine latest 5cb3aa00f899 2 days ago 5.53MB hello-world latest fce289e99eb9 2 months ago 1.84kB
通过从下载的镜像运行高山容器来验证Docker CE是否正常工作。
$docker run -it --rm alpine /bin/sh /# apk update fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz v3.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
在CentOS 8上安装Docker Compose CentOS的8
我们已经安装并运行了Docker,现在让我们将其更改为Docker Compose。 Docker Compose是用于定义和运行多容器Docker应用程序的工具。
使用撰写文件配置应用程序服务。与运行docker命令不同,仅需一个命令即可从配置创建和启动所有服务。 Docker Compose是用于开发,测试和登台环境以及CI工作流的出色工具。
在RHEL 8/CentOS 8上安装Docker Compose
请遵循我们关于在Linux上安装最新Docker Compose的单独教程。
在Linux上安装Docker Compose
为了使本教程保持简短,我们将不涉及Docker compose的用法。建议我们仔细阅读Docker官方文档和Docker Compose文档以了解更多信息。
安装Docker UI可选
如果我们需要Docker管理界面,可以轻松管理不同的Docker主机和容器,请尝试使用Portainer。它易于安装和使用。
如何安装Portainer Docker UI管理器
监控Docker容器
监视Docker容器可以使用Netdata或者Ctop或者Prometheus和Grafana等监视工具来实现。