如何在Ubuntu 20.04上安装和使用Docker

Docker是一个最流行的开源平台,供开发者和系统管理员使用容器来构建、运行和共享应用程序。容器化(使用容器来部署应用程序)正变得越来越流行,因为容器具有灵活、轻量级、可移植、松散耦合、可扩展和更安全等特点。
本文是初学者学习如何在Ubuntu 20.04 Linux系统上通过一些基本命令安装和使用Docker的良好起点。在本文中,我们将安装Docker社区版(CE)。
先决条件:
安装Ubuntu 20.04系统的服务器,有权限运行sudo命令的用户。
一、在Ubuntu 20.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-ce

在这里插入图片描述

在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

在这里插入图片描述

二、使用sudo命令以非root用户身份管理Docker
默认情况下,Docker守护程序绑定到用户root拥有的UNIX套接字(而不是TCP端口)。因此,Docker守护程序始终以root用户身份运行,要运行docker命令,您需要使用sudo。
另外,在安装Docker包的过程中,会创建一个名为docker的组。当Docker守护进程启动时,它会创建一个UNIX套接字,docker组的成员可以访问这个套接字(它授予的权限相当于root用户)。
要在不使用sudo的情况下运行docker命令,请按如下所示在docker组中添加所有应该访问docker的非root用户。在此示例中,命令将当前登录的用户或用户名添加到docker组:

$ sudo usermod -aG docker $USER

或者

$ sudo usermod -aG docker username

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

$ newgrp docker 
$ groups

接下来,确认您可以不使用sudo运行docker命令。以下命令下载测试图像并在容器中运行它。容器运行后,它将打印一条参考消息并退出。这也是交叉检查您的安装是否工作正常的另一种方法。

$ docker run hello-world

在这里插入图片描述

三、使用Docker镜像
Docker镜像是一个只读的模板文件,包含创建Docker容器的说明。你可以创建你的自定义镜像,也可以只使用别人创建并发布在Docker Hub中的镜像,Docker Hub是全球最大的容器镜像库和社区。
您可以使用以下命令centos在Docker Hub中搜索镜像:

$ docker search centos 

在这里插入图片描述

要下载本地镜像,请使用 pull 命令。这个例子展示了如何下载官方的 centos 镜像。

$ docker pull centos

在这里插入图片描述

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

$ docker images

在这里插入图片描述

如果不再需要镜像,则可以将其从系统中删除。

$ docker rmi centos

或者

$ docker rmi centos:latest  #其中latest是名称

四、运行和管理Docker容器
Docker容器是一个在Linux上原生运行的进程,与其他容器共享主机的内核。关于Docker镜像,一个容器只是一个正在运行的镜像。
要启动一个基于新的 centos 镜像的容器,运行以下命令,其中 "centos "是本地镜像名称,"cat /etc/centos-release "是要在容器中运行的命令:

$ docker run centos cat /etc/centos-release

容器运行是一个独立的进程,它有自己的:文件系统、网络,以及与主机分离的独立进程树。注意,可以使用容器的ID、ID前缀或名称操作容器,如下所示。上述容器进程在命令运行后退出。
使用Docker ps命令列出Docker容器,如下所示。使用-l标识显示最新创建的容器在所有状态:

$ docker ps

或者

$ docker ps -l

在这里插入图片描述

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

$ docker ps -a

在这里插入图片描述

您还可以在退出后使用其容器ID启动容器。例如,在上一个命令中,我们的容器ID为94c35e616b91。我们可以如图所示启动容器(注意,它会运行命令并退出):

$ docker start 94c35e616b91

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

$ docker stop 94c35e616b91

Docker还允许你在运行容器时使用–name选项给容器指定一个名字。

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

在这里插入图片描述

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

$ 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

在这里插入图片描述

在上面的命令中,-it告诉Docker分配一个与容器的stdin连接的虚拟终端机,从而在容器中创建一个交互式bash shell。
您可以通过发出退出命令来退出。

# exit

如果您不想退出,则可以从容器中分离并使其运行。为此,请按顺序先使用 CTRL+p,然后 CTRL+q 。
在这里插入图片描述

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

$ docker attach my_test

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

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

最后一个很重要的点,您可以通过运行以下命令从主机会话中停止正在运行的容器:

$ docker kill my_test

在本文中,我们介绍了如何在Ubuntu 20.04 Linux中安装和使用Docker CE,希望对您有所帮助。
A5互联https://www.a5idc.net/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值