Skip to content

写个 docker+nginx 部 https 的模板

✨文章摘要(AI生成)

笔者在这篇文章中分享了一个基于nginx + dockerhttps模板,旨在简化国内用户自建小网站的部署过程。考虑到国内缺乏便捷的免费部署平台,笔者创建了一个易于使用的模板和相应的脚本,以便快速实现https反向代理。

使用该模板的基本步骤包括:

  1. 克隆模板项目到本地。
  2. 替换证书文件为自己的证书。
  3. 运行脚本以替换域名。
  4. 根据需要修改docker-compose.yml中的根目录。
  5. 启动 Docker 容器。

最后,笔者建议使用docker ps命令检查容器状态,并查看nginx日志以确保服务正常运行。总的来说,这个模板为用户提供了一个快速、方便的方式来部署https网站。

背景

有时候想部署一个给国内朋友使用的小网站,但是国内又没有像国外那些免费好用的部署平台,所以就只能自己搭建,自己搭建又每次避开不了 nginx 反代实现 https 这一步,所以就简单写了个模板以及 shell 脚本,方便自己每次快速部署。

简介

模板地址,一个基于nginx + dockerhttps模板,可以快速部署https网站🚀🚀🚀

你至少并且也只需要拥有 docker 环境,# 如何在 Ubuntu 20.04 上安装和使用 Docker

基本流程:

使用该模板

  1. 进入你的repos目录,可以为任意目录(不过后续可能要稍做修改),这里以/root/repos/为例,如果没有repos目录,可以创建一个。然后clone本项目
shell
cd /root/repos/
shell
git clone https://github.com/Justin3go/nginx-https-template.git
cd nginx-https-template
  1. 替换cert/下的证书为你的证书,格式为your-domain.keyyour-domain.pem,比如我的域名是justin3go.com,那么我的证书就是justin3go.com.keyjustin3go.com.pem

  2. 运行脚本./scripts/replace-domain.sh --domain=your-domain

shell
sudo chmod -R +x ./scripts # 设置脚本权限
./scripts/replace-domain.sh --domain=your-domain # 运行脚本替换域名

注意:默认https转发的是80端口,如果你的网站不是80端口,需要修改/conf.d/default.conf中的proxy_pass为你的端口

  1. 如果在第一步中你使用的自定义目录,则修改docker-compose.yml中的根目录为你的目录,默认为/root/repos/

  2. 启动容器

shell
./scripts/run.sh

接下来

  • 你可以使用docker ps命令查看容器是否正常运行
  • 以及使用tail -n 1000 logs/access.logtail -n 1000 logs/error.log查看nginx运行日志