在Ubuntu 18.04上安装Docker并部署Nginx容器

使用容器轻松托管网站

容器是部署隔离服务和应用程序实例的好方法。使用这些容器化工具,您可以轻松地将它们从一台服务器移到另一台服务器,快速更新它们,甚至将它们部署到集群中以获得大型可扩展性。本文将为您完成安装市场上最受欢迎的容器工具之一,Docker的过程,然后部署NGINX Web服务器

安装

在Ubuntu 18.04上安装Docker非常容易。打开终端窗口(或通过SSH)。

  1. 在安装Docker之前,最好更新和升级服务器。但是请记住,如果升级包括内核,则需要重新启动服务器,以便更改生效。因此,在可能重新启动服务器的时间内运行更新/升级命令。

    更新和升级Ubuntu服务器的命令是:

    sudo apt-get更新
    sudo apt-get升级
  2. 当这两个命令完成(如果需要的话,您已经重新启动),然后可以通过发出以下内容安装Docker命令

    sudo apt-get install docker.io
    通过命令行安装docker在ubuntu服务器上
  3. 该命令完成后,启动并启用docker使用命令:

    sudo systemctl启动码头
    sudo systemctl启用docker

    这使Docker可以自动启动,如果将服务器重新启动。

  4. 接下来,将用户添加到Docker组。否则,您必须运行具有Sudo特权的Docker命令,这可能导致安全问题。可以用一个命令来照顾这一点:

    sudo usermod -ag docker $用户

    如果您很好奇,以下说明了上述命令:

    • Usermod是修改用户的实际命令。
    • 一个选项指示您正在将您附加到用户的USERMOD。
    • G选项指示您将用户添加到组中。
    • Docker是您将用户添加到的组。
    • $用户指示Bash使用当前登录的用户。
  5. 运行上述命令后,注销并登录以进行更改生效。

    您现在准备开始与Docker合作。

从dockerhub汲取图像

Dockerhub是一个集中式存储库,可容纳可用作容器基础的图像。Dockerhub包含数千张图像,其中一些图像具有非常特定的(甚至是利基市场的目的)。

  1. 因为目标是部署nginx容器,下拉官方的NGINX容器。在执行此操作之前,请发出命令:

    Docker图像
    通过命令行列出Docker图像

    该命令的输出不应显示当前图像。

  2. 用命令拉下NGINX图像:

    Docker Pull nginx
  3. 上面的命令拉下图像。如果您发出命令Docker图像,您会看到列出的新拉图像。

    NGINX图像现在出现在我们的Docker图像列表中

部署NGINX容器

现在,您已经拥有一个可以基于容器的图像,将NGINX的容器化实例部署到网络上。将NGINX作为容器,您可以控制其部署的端口。

  1. 在标准端口80上部署nginx。为了实现这一目标,该命令看起来像:

    docker run -name docker -nginx -p 80:80 nginx

    对上述命令的一些解释:

    • Docker是实际命令
    • 指示命令认为将使用命令运行。
    • - 姓名给容器一个可读的名称。
    • -p指示Docker使用哪些端口。
    • 80:80- 第一个80是外部端口(如您的网络上使用),第二80是内部端口(如Docker所使用)。
    • nginx是用于容器的图像。
  2. 部署该容器后,您应该能够将浏览器指向http:// server_ip(在其中服务器IP是服务器托管Docker的IP地址),然后查看NGINX欢迎页面。

    NGINX欢迎屏幕显示我们的容器已成功部署
  3. 您还会注意到您不会收到命令提示符。为什么?您在附加模式下运行命令。如果你打了Ctrl+C钥匙组合,容器被杀死,您有提示。

  4. 如果要保持容器运行并取回提示,则必须以独立模式部署容器,例如:

    docker run -name docker -nginx -p 80:80 -d nginx
    Docker无法部署具有相同名称的重复容器
  5. 但是,由于您已经部署了第一个容器,因此您会看到错误。为了避免这种情况,您必须停止使用第一个容器Docker Stop命令。为了做到这一点,您必须注意容器名称(将在错误中打印出来),这是一串随机字符的长字符串。要运行此命令,您只需要使用容器的前四个字符,例如:

    Docker Stop F149
  6. 接下来,您将使用命令删除容器:

    Docker RM F149

    原始容器现在已停止并已删除。然后,您可以在独立模式下成功重新部署NGINX容器。

此页面有用吗?