第一部分:在CentOS和RHEL 8/7中安装Docker并学习基本的容器操作

本系列共4篇文章,我们将讨论Docker,它是一个开源的轻量级虚拟化工具,运行在操作系统级别之上,允许用户创建、运行和部署应用程序,并将其封装在小型容器中。
这种类型的Linux容器被证明是快速、可移植和安全的。在Docker容器中运行的进程始终与主机隔离,防止外界的篡改。
本教程提供了一个关于如何在CentOS/RHEL 8/7上安装Docker、创建和运行Docker容器的起点,但也仅仅接触到了Docker的表面。
一、安装和配置Docker

  1. 早期的Docker版本被称为docker或docker-engine,如果你安装了这些,你必须在安装较新的docker-ce版本之前卸载它们。
# yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  1. 安装最新版本的Docker引擎需要设置Docker Engine,并安装yum-utils包,在系统上启用Docker稳定存储库。
# yum install -y yum-utils
# yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  1. 现在,从Docker存储库安装较新的docker-ce版本,并手动对其进行容器化,因为由于某些问题,Red Hat阻止了docker-cecontainerd.io > 1.2.0-3.el7的依赖项的安装。
# yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
# yum install docker-ce docker-ce-cli

4.安装完Docker软件包后,启动守护程序,检查其状态并使用以下命令在系统范围内启用它:

# systemctl start docker 
# systemctl status docker
# systemctl enable docker

5.最后,运行容器测试镜像,通过发出以下命令来验证Docker是否正常运行:

#docker run hello-world

在这里插入图片描述

如果您可以看到以上提示,那就没问题。

6.现在,您可以运行一些基本的Docker命令来获取有关Docker的一些信息:
有关Docker的系统范围信息

# docker info

在这里插入图片描述

对于Docker版本

# docker version

在这里插入图片描述

7.要获取所有可用Docker命令的列表,请在控制台上键入docker。

# docker

在这里插入图片描述

二、下载Docker镜像
8.为了启动和运行Docker容器,首先,必须从主机上的Docker Hub下载镜像。Docker Hub从其存储库中提供了许多免费镜像。
要搜索Docker镜像,例如Ubuntu,发出以下命令:

# docker search ubuntu

在这里插入图片描述

9.根据需要确定要运行的镜像后,通过运行以下命令在本地下载(在这种情况下,将下载并使用Ubuntu镜像):

#docker pull ubuntu

在这里插入图片描述

10.要列出主机上所有可用的Docker镜像,请发出以下命令:

# docker images

在这里插入图片描述

11.如果您不再需要Docker镜像,并且想要将其从主机中删除,请发出以下命令:

#docker rmi ubuntu

在这里插入图片描述

三、运行Docker容器
对镜像执行命令时,基本上可以得到一个容器。在容器中执行的命令结束后,容器停止(您得到了未运行或退出的容器)。如果在同一镜像中再次运行另一个命令,则会创建一个新容器,依此类推。
创建的所有容器将保留在主机文件系统上,直到您选择使用docker rm命令删除它们为止。
12.为了创建和运行容器,您需要在下载的镜像中运行命令,在本例中为Ubuntu,因此基本命令是使用cat命令在容器内显示分发版本文件,如下所示例:

#docker run ubuntu cat /etc/issue

上面的命令划分如下:

#docker run [local image] [command to run into container]

13.要使用已执行的创建容器的命令再次运行其中一个容器,首先,必须通过发出以下命令来获得容器ID(或Docker自动生成的名称),该命令显示正在运行的容器的列表和停止(非运行中)的容器:

#docker ps -l 

在这里插入图片描述

14.一旦获得了容器ID,就可以通过发出以下命令,使用创建它的命令再次启动容器:

#docker start 923a720da57f

在此,字符串923a720da57f表示容器ID。
15.如果容器处于运行状态,则可以通过发出命令来获取其IDdocker ps。docker stop通过指定容器ID或自动生成的名称来停止正在运行的容器问题命令。

# docker stop 923a720da57f

或者

# docker stop cool_lalande
# docker ps

16.通过在命令行中使用–name选项,为你创建的每个容器分配一个独特的名称,如下例所示,这样你就不必记住容器的ID:

# docker run --name ubuntu20.04 ubuntu cat /etc/issue

17.然后,使用为容器分配的名称,你可以进一步操作容器(开始、停止、删除、顶部、统计),如以下示例所示:

# docker start ubuntu20.04
# docker stats ubuntu20.04
# docker top ubuntu20.04 

请注意,如果用于创建容器的命令过程完成,则上述某些命令可能不会显示任何输出。当容器内部运行的过程完成时,容器将停止。
四、在容器中运行交互式会话
18.为了以交互方式连接到容器shell会话,并像在其他任何Linux会话上一样运行命令,请发出以下命令:

#docker run -it ubuntu bash

在这里插入图片描述

上面的命令划分如下:
-i 用于启动交互式会话。
-t 分配TTY并附加stdin和stdout。
ubuntu 是我们用来创建容器的镜像。
bash(或/bin/bash)是我们在Ubuntu容器中运行的命令。
19.要退出正在运行的容器会话并返回到主机,必须输入exit命令。的出口命令终止所有的容器进程并停止。

# exit
  1. 如果交互式登录容器终端提示,需要保持容器处于运行状态但退出交互式会话,可以按Ctrl+p和Ctrl+q键退出控制台,返回主机终端。
    21.要重新连接到运行中的容器,您需要容器ID或名称。发出docker ps命令以获取ID或名称,然后docker attach通过指定容器ID或名称来运行命令,如上图所示:
#docker attach <container id>

22.要从主机会话停止正在运行的容器,请发出以下命令:

#docker kill <container id>

以上就是容器操作的基本内容。在下一个教程中,我们将讨论如何在Docker容器中保存、删除和运行web服务器。
A5互联https://www.a5idc.net/

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页