收集云服务器优惠信息
记录云服务器使用心得

Ubuntu 22.04系统安装和使用Docker图文教程

Docker是最流行的开源平台,供开发人员和系统管理员使用容器构建、运行和共享应用程序。容器化(使用容器来部署应用程序)变得越来越流行,因为容器灵活、轻量、可移植、松散耦合、可扩展且更安全。

在本文中,小编简单介绍如何通过一些基本命令在Ubuntu 22.04(包括Ubuntu 20.04) Linux系统上安装和使用Docker。对于本文教程,这里将安装Docker 社区版( CE )。

在Ubuntu 22.04上安装Docker

要使用最新版本的Docker,可以从官方Docker存储库安装它。因此,首先将官方Docker存储库的GPG密钥添加到您的系统中,然后使用以下命令将存储库配置添加到APT源:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

现在,使用以下命令更新APT包缓存以将新的Docker包包含到系统中:

$ sudo apt update

接下来,安装Docker包,命令如下:

$ sudo apt install docker-c

在Docker软件包安装过程中,软件包安装程序会触发systemd(系统和服务管理器)自动启动并启用docker服务。使用以下命令确认docker服务处于活动状态并启用在系统启动时自动启动。另外,检查其状态:

$ sudo systemctl is-active docker
$ sudo systemctl is-enabled docker
$ sudo systemctl status docker

此外,还有其它几个systemctl命令可以管理和控制docker服务,其中包括:

$ sudo systemctl stop docker  #停止docker服务
$ sudo systemctl start docker  #启动docker服务
$ sudo systemctl restart docker  #重启docker服务

要检查系统上安装的Docker CE版本,请运行以下命令:

$ docker version

当然,你可以通过运行不带任何选项或参数的docker命令来查看可用的docker使用命令:

$ docker

Docker命令列表

使用sudo命令以非root用户身份管理Docker

默认情况下,Docker守护进程绑定到root用户拥有的UNIX套接字(而不是TCP端口)。因此,Docker守护进程始终以root用户身份运行,并且要运行docker命令,所以需要使用sudo。此外,在Docker包安装过程中,会创建一个名为docker的组。当Docker守护进程启动时,它会创建一个可供docker组成员访问的UNIX套接字(授予与root用户同等的权限)。

要在不使用sudo的情况下运行docker命令,请在docker组中添加所有应该访问docker的非root用户,命令如下。在此示例中,该命令将当前登录的用户($USER)或用户名添加到docker组:

$ sudo usermod -aG docker $USER
或者
$ sudo usermod -aG docker username

要激活对组的更改,请运行以下命令:

$ newgrp docker 
$ groups

将用户添加到Docker组

接下来,验证是否可以在没有sudo的情况下运行docker命令。以下命令下载测试映像并在容器中运行它。容器运行后,它会打印一条信息性消息并退出。这也是检查你的安装是否正常工作的另一种方法。

$ docker run hello-world

验证Docker安装

使用Docker镜像

Docker镜像是一个只读模板文件,其中包含创建Docker容器的说明。你可以创建自定义镜像,也可以仅使用其他人创建并在Docker Hub(世界上最大的容器镜像库和社区)中发布的镜像。可以使用以下命令在Docker Hub中搜索centos镜像:

$ docker search centos

要在本地下载镜像,请使用pull 命令。本例展示如何下载centos官方镜像。

$ docker pull centos

下载 CentOS Docker 镜像

下载完成后,可以列出本地系统上的可用镜像:

$ docker images

列出Docker镜像

如果不再需要某个映像,可以将其从系统中删除:

$ docker rmi centos
或者
$ docker rmi centos:latest    #where latest is the tag

运行和管理Docker容器

Docker容器是一个在Linux上本地运行的进程,与其它容器共享主机的内核。对于Docker镜像来说,容器只是一个正在运行的镜像。要基于新centos镜像启动容器,请运行以下命令,其中“centos”是本地映像名称,“ cat /etc/centos-release ”是在容器中运行的命令:

$ docker run centos cat /etc/centos-release

容器运行一个独立的进程,该进程是隔离的,因为它有自己的:文件系统、网络和与主机分离的隔离进程树。请注意,你可以使用容器的ID 、 ID前缀或名称来操作容器,如下所示。上述容器进程在命令运行后退出。

另外,要列出Docker容器,请使用docker ps命令,如下所示。使用-l标志显示所有状态下最新创建的容器:

$ docker ps
或者
$ docker ps -l

列出Docker容器

要显示所有容器(包括已退出的容器),请使用-a标志。

$ docker ps -a

显示所有Docker容器

另外,你还可以在容器退出后使用其容器ID来启动容器。例如,在前面的命令中,容器ID是94c35e616b91,这样可以如下所示启动容器(注意它将运行命令并退出):

$ docker start 94c35e616b91

使用ID启动Docker容器

要使用其ID停止正在运行的容器,请使用stop 命令,如下所示:

$ docker stop 94c35e616b91

Docker还允许用户在运行容器时使用--name选项为容器分配名称:

$ docker run --name my_test centos cat /etc/centos-release
$ docker ps -l

为Docker容器指定名称

现在可以使用容器名称来管理(启动、停止、统计、删除等)容器:

$ docker stop my_test
$ docker start my_test
$ docker stats my_test
$ docker rm my_test

在Docker容器中运行交互式会话

要在容器中启动交互式shell会话以使您能够在容器中运行命令,请运行以下命令:

$ docker run --name my_test -it centos

在容器中启动交互式Shell

在上面的命令中,-it选项告诉Docker分配一个连接到容器的stdin的伪TTY(PTY),从而在容器中创建一个交互式bash shell。你可以通过输入exit命令退出,具体如下:

# exit

如果不想退出,可以与容器分离并使其保持运行。为此,请使用CTRL+pCTRL+q键序列。

从正在运行的会话中分离Docker

你可以使用Attach命令连接回容器,该命令会将本地标准输入、输出和错误流附加到正在运行的容器:

$ docker attach my_test

此外,你也可以使用-d标志以分离模式启动容器。然后使用Attach命令将终端的标准输入、输出和错误流附加到正在运行的容器:

$ docker run --name my_test -d -it centos
$ docker attach my_test

以分离模式启动Docker容器

最后但并非最不重要的一点是,可以通过运行以下命令从主机会话停止正在运行的容器:

$ docker kill my_test

就是这样,在上面的内容中,小编简单介绍了在Ubuntu 22.04 Linux中安装和使用Docker CE的简单步骤,相对来说不是很复杂。如果有需要在Ubuntu系统中安装Docker,那么可以参考上述图文教程进行操作设置。

赞(0)
网站声明:本文内容由趣云笔记原创,部分资源收集于网络,如有侵权请联系企鹅:2472781824删除。
文章名称:《Ubuntu 22.04系统安装和使用Docker图文教程》
文章链接:https://www.ecscoupon.com/1780.html
本站资源仅供个人学习交流,未经允许不得转载,更不允许用于商业用途。如需转载,请注明来源,感谢理解!