在Ubuntu 18.04上,如何安装和使用Docker

・10 分钟阅读

Docker是一种容器技术,它允许你快速构建,测试和部署可移植的,自足的容器,几乎可以在地方运行,Docker已经成为容器部署的事实标准,它是DevOps工程师及它持续集成和交付管道的必备工具。

在本教程中,介绍如何在Docker机器上安装Ubuntu 18.04,并探索基本的Docker概念和命令。

先决前提条件

在继续本教程之前,请确保你以有sudo权限的用户身份登录。本教程中的所有命令都应作为非root用户运行。

在Ubuntu上安装Docker

尽管Docker安装包在官方Ubuntu 18.04存储库中可用,但是它可能并不总是最新版本,推荐的方法是从Docker的存储库安装最新的Docker包。

启用Docker存储库

首先更新软件包列表并安装必要的依赖关系,以通过HTTPS添加新存储库:

sudo apt updatesudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

使用以下curl命令导入存储库的GPG密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

将Docker APT存储库添加到您的系统中:

sudo add-apt-repository"deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装Docker CE

现在启用了Docker存储库,你可以安装需要的Docker版本,

要安装最新版本的Docker,请使用下面的命令,如果要安装特定的Docker版本,请跳过此步骤并转到下一个版本。

sudo apt updatesudo apt install docker-ce

要安装特定的版本,首先列出Docker存储库中的可用版本:

apt list -a docker-ce

命令在第二列中打印可用的Docker版本。


docker-ce/bionic 5:18.09.7~3-0~ubuntu-bionic amd64
docker-ce/bionic 5:18.09.6~3-0~ubuntu-bionic amd64
docker-ce/bionic 5:18.09.5~3-0~ubuntu-bionic amd64

例如要安装版本18.09.6,请键入:

sudo apt install docker-ce=5:18.09.6~3-0~ubuntu-bionic

要阻止自动更新Docker包,请将它标记为保留:

sudo apt-mark hold docker-ce

安装完成后,Docker服务将自动启动,键入以下命令验证它:

sudo systemctl status docker

输出将如下所示:


● docker.service - Docker Application Container Engine
 Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor p
 Active: active (running) since Tue 2019-07-02 11:28:40 UTC; 15min ago
 Docs: https://docs.docker.com
 Main PID: 11911 (dockerd)
 Tasks: 10
 CGroup: /system.slice/docker.service

执行不带Docker命令的sudo

默认情况下,Docker需要管理员权限。

要以非root用户身份运行Docker命令而无需先添加sudo,您需要将用户添加到docker组。此组是在安装Docker CE包期间创建的,为此,请运行以下命令:

sudo usermod -aG docker $USER

$USER是一个保存用户名的环境变量。

注销并重新登录,以刷新组成员身份。

要验证Docker是否已成功安装,并且可以运行Docker命令,而无需预先设置sudo,请运行:

docker container run hello-world

该命令将下载测试镜像,在容器中运行它,输出" Hello from Docker "消息并退出。

升级Docker

发布新的Docker版本时,可以使用标准升级过程更新软件包:

sudo apt updatesudo apt upgrade

卸载Docker

在卸载Docker之前,请删除所有容器,镜像,卷和网络。

你可以卸载Docker作为其他软件包安装apt

sudo apt purge docker-cesudo apt autoremove

Docker命令行界面

Docker CLI命令采用以下形式:

docker [option] [subcommand] [arguments]

要列出所有可用的命令,请键入不带参数的docker

docker

如果需要更多关于[subcommand]的帮助,可以使用--help开关,如下所示:

docker [subcommand] --help

Docker镜像

Docker镜像由一系列文件系统层组成,这些层表示镜像Docker文件中的指令,该指令组成可执行软件应用程序,镜像是一个不可变的二进制文件,包括应用程序和其他所有依赖项,如库,二进制文件和运行应用程序所需的指令。

可以将Docker镜像看作Docker容器的快照,

大多数Docker镜像在Docker-Hub上可用,Docker-Hub是基于云的注册服务,它还用于将Docker镜像保存在公共或私有存储库中。

搜索Docker镜像

要从Docker-Hub注册表中搜索镜像,请使用search子命令。

例如要搜索Ubuntu镜像,请键入:

docker search ubuntu

输出应该如下所示:

如你所见,搜索打印的表有五列NAMEDESCRIPTION

多数Docker镜像在Docker-Hub标记与版本号,未指定标记时,Docker将提取最新的标记。

下载Docker镜像

例如要下载Ubuntu 18.04镜像的最新正式版本,可以使用以下image pull命令:

docker image pull ubuntu

根据你的互联网速度,下载需要几秒钟或几分钟。

当不指定标签时,Docker会拉出最新的Ubuntu镜像,在撰写本文时是18.04.

如果要下载以前的Ubuntu版本,假设Ubuntu 16.04,则需要使用docker image pull ubuntu:16.04

要列出所有下载的镜像,请键入:

docker image ls

输出将如下所示:

删除Docker镜像

如果出于某些原因,要删除镜像,可以使用image rm [image_name]子命令执行以下操作:

docker image rm ubuntu

Docker容器

镜像的实例称为容器,容器表示单个应用程序,进程或服务的运行时。

它可能不是最合适的比较,但是如果你是程序员,可以将Docker镜像看作类,将Docker容器看作类的一个实例。

可以使用docker container子命令启动,停止,删除和管理容器。

启动Docker容器

以下命令将基于Ubuntu映像启动Docker容器。如果你没有本地的镜像,它首先下载它:

docker container run ubuntu

容器启动,运行一个空命令,然后退出。

开关-it允许通过命令行与容器交互,启动交互式容器类型:

docker container run -it ubuntu /bin/bash

[root@719ef9304412 /]#

从上面的输出中可以看到,一旦容器启动,命令提示符就会改变,这意味着您正在容器内部工作。

列出Docker个容器

要列出活动的容器,请键入:

docker container ls
> > >如果没有输出将运行容器要查看活动容器和非活动容器,请将它传递给-a开关:
docker container ls -a

删除Docker个容器

删除一个或多个容器复制容器ID (还是ID )并在container rm子命令之后粘贴它们:

docker container rm c55680af670c

结束语

你已经学习了如何在Ubuntu 18.04机器上安装Docker,以及如何下载Docker镜像并管理Docker容器,您可能还想阅读有关Docker Compose的信息,它使您可以定义和运行多容器Docker应用程序。

了解更多关于Docker的信息请查看官方Docker文档

如果你有问题,请在下面留言。

讨论
Tianye profile image