返回

Nginx+Docker 部署 HTTPS 网站指南

前端

如何使用 Docker 和 Nginx 部署 HTTPS 网站

背景

在当今数字世界中,安全性和隐私至关重要,特别是对于网站而言。对于没有访问专用服务器的网站所有者来说,使用 Docker 和 Nginx 部署 HTTPS 网站提供了一种可行且经济高效的解决方案。本文将详细介绍如何使用 Docker 和 Nginx 部署 HTTPS 网站,并提供详细的分步指南。

先决条件

在开始之前,您需要具备以下先决条件:

  • Docker 安装在您的系统上
  • Nginx 安装在您的系统上
  • SSL 证书(例如 Let's Encrypt 证书)
  • 文本编辑器(例如 Vim 或 Nano)

步骤

1. 创建 Docker 镜像

创建一个名为 nginx-https 的 Docker 镜像,其中包含 Nginx 和 SSL 证书:

docker build -t nginx-https .

2. 运行 Docker 容器

使用以下命令运行 Docker 容器:

docker run -d --name nginx-https -p 443:443 nginx-https

3. 配置 Nginx

使用以下命令编辑 Nginx 配置文件:

nano /etc/nginx/conf.d/default.conf

在文件中添加以下配置:

server {
    listen 443 ssl;
    server_name your_domain.com;

    ssl_certificate /path/to/your.crt;
    ssl_certificate_key /path/to/your.key;

    location / {
        proxy_pass http://localhost:80;
    }
}

your_domain.com 替换为您的实际域名,并将 /path/to/your.crt/path/to/your.key 替换为您的 SSL 证书文件路径。

4. 重新加载 Nginx

重新加载 Nginx 以应用更改:

nginx -s reload

验证

使用以下命令验证您的 HTTPS 网站是否已部署:

curl -v https://your_domain.com

如果出现以下输出,则表明您的网站已成功部署 HTTPS:

*   Trying 1.2.3.4...
* Connected to your_domain.com (1.2.3.4) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
* Server certificate: your_domain.com
* Server certificate: RapidSSL RSA CA 2018
* Server certificate: DST Root CA X3
* Server certificate: Let's Encrypt Authority X3
* Issuer certificate: DST Root CA X3
* SSL certificate verify ok.

结论

使用 Docker 和 Nginx 部署 HTTPS 网站是一种简单有效的方法,可以为您的网站增加一层安全性。通过遵循本文中概述的步骤,您可以快速轻松地部署一个 HTTPS 网站,从而保护您的用户和他们的数据。