返回

Docker 入门:从概念到 Nginx 部署

前端

Docker 的魅力:从入门到构建 Nginx 服务

前言

欢迎来到 Docker 系列之旅的第二章,我们将深入探讨 Docker 的基本概念并演示如何部署 Nginx 服务。Docker 作为一种容器化技术,近年来已成为现代应用程序开发和部署的基石,它提供了一种将应用程序及其依赖项打包成轻量级、独立的容器的方法,从而提高可移植性、效率和可伸缩性。

Dockerfile 和镜像

Docker 的核心是 Dockerfile,这是一个文本文件,包含构建 Docker 镜像的指令。镜像是包含应用程序及其所有必需依赖项的可执行包。在我们的 Nginx 示例中,Dockerfile 将包含创建基本操作系统镜像、安装 Nginx 并复制配置文件的指令。

FROM ubuntu:latest
RUN apt-get update && apt-get install -y nginx
COPY nginx.conf /etc/nginx/nginx.conf

通过构建此 Dockerfile,我们可以创建包含 Nginx 的自定义镜像,该镜像可以轻松地在任何支持 Docker 的环境中部署。

容器

从镜像创建后,就可以运行容器了。容器是镜像的运行实例,它包含正在运行的应用程序及其所有资源。容器隔离于基础主机,确保应用程序及其依赖项不受主机环境的影响。

使用 Docker CLI,我们可以使用以下命令运行 Nginx 容器:

docker run -d --name my-nginx -p 80:80 nginx:latest

该命令将创建名为 "my-nginx" 的容器,该容器将运行 Nginx 镜像的最新版本,并将其端口 80 映射到主机端口 80。

Nginx 部署

现在我们已经了解了 Docker 的基本概念,让我们继续在 Docker 上部署 Nginx 服务。

  1. 创建 Dockerfile :创建 Dockerfile 并添加上面讨论的指令。
  2. 构建镜像 :使用 docker build 命令构建 Nginx 镜像,例如:
    docker build -t my-nginx .
    
  3. 运行容器 :使用 docker run 命令运行 Nginx 容器,例如:
    docker run -d --name my-nginx -p 80:80 my-nginx
    
  4. 验证部署 :通过访问主机上的端口 80 来验证 Nginx 是否正在运行,您应该会看到 Nginx 默认欢迎页面。

结论

通过遵循这些步骤,您已经成功地在 Docker 上部署了 Nginx 服务。通过理解 Docker 的基本概念,例如 Dockerfile、镜像和容器,您现在可以构建和部署自己的容器化应用程序。在 Docker 系列的下一章中,我们将深入探讨更高级的 Docker 主题,例如卷、网络和编排。