V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
quietjosen
V2EX  ›  分享创造

[开源] 通过 docker 运行 nginx,使用 Let's Encrypt 更新 https/ssl

  •  
  •   quietjosen ·
    atjason · 338 天前 · 3289 次点击
    这是一个创建于 338 天前的主题,其中的信息可能已经有所发展或是发生改变。

    又屯了台服务器,又要使用 nginx 搭建网站系统。

    为了以后屯更多服务器时方便配置(狗头),通过 docker 运行 nginx,使用 Let's Encrypt 更新 https/ssl

    项目地址:https://github.com/atjason/docker-nginx

    如何使用

    介绍本项目

    各文件夹及文件:

    • nginx: nginx 配置文件
    • www: 站点数据文件,每个域名一个子文件夹,日志位于 www/log
    • ssl: ssl 配置文件,使用 Let's Encrypt 生成及更新
    • vhost.sh: 添加、删除站点
    • compose.yaml: docker compose 配置文件
    • start.sh: 使用 docker compose up 启动
    • reload-nginx.sh: 修改站点配置文件后,重载 nginx
    • renew-ssl.sh: 使用 Let's Encrypt 更新 ssl

    欢迎克隆使用,期待提出更好的配置方法。

    第 1 条附言  ·  336 天前

    评论区群友推荐了 caddy,我简单试用了下,感觉很香,很适合我的需求,推荐给大家。

    17 条回复    2023-12-07 14:18:38 +08:00
    mohumohu
        1
    mohumohu  
       338 天前
    可以看一下 Caddy
    WizardLeo
        2
    WizardLeo  
       338 天前
    和 nginx proxy manager 有什么区别呢?
    lucifer518
        3
    lucifer518  
       338 天前
    certbot 已经够方便了
    quietjosen
        4
    quietjosen  
    OP
       338 天前
    @mohumohu 恩,去学习下;另外还有人推荐 coolify
    quietjosen
        5
    quietjosen  
    OP
       338 天前
    @WizardLeo 我也去学习下。重复造轮子的过程,会对 docker 、nginx 、ssl 有更深的理解。
    quietjosen
        6
    quietjosen  
    OP
       338 天前
    @lucifer518 是的,对个人很友好了。
    daisyfloor
        7
    daisyfloor  
       338 天前
    推荐 caddy 。
    a342191555
        8
    a342191555  
       338 天前
    我也推荐一组:

    https://github.com/nginx-proxy/nginx-proxy

    https://github.com/nginx-proxy/acme-companion

    可以分开用,也可以合并用。
    quietjosen
        9
    quietjosen  
    OP
       337 天前
    @daisyfloor 第二位推荐 Caddy ,扫了一眼也感觉不错 👍
    quietjosen
        10
    quietjosen  
    OP
       337 天前
    @a342191555 谢谢推荐
    IvanLi127
        11
    IvanLi127  
       337 天前 via Android
    那我推荐个重一点的,Traefik

    顺便借楼问下有没有能在 github actions 跑的方案?我想给虚拟主机定期更新证书🤣
    quietjosen
        12
    quietjosen  
    OP
       337 天前
    @IvanLi127 定期更新证书,用 crontab 不行吗?
    IvanLi127
        13
    IvanLi127  
       337 天前 via Android
    @quietjosen 不知道 php 虚拟主机能不能用脚本写定时任务,也不太想写 php 。网站是纯静态的,因为正好是自建的 gitea actions 负责用 ftp 上传,所以想找个方便的 actions 来做这个。
    多少有点强迫症 QAQ
    gneko
        14
    gneko  
       336 天前
    我在用的一个镜像跟你的功能应该差不多: https://github.com/linuxserver/docker-swag

    简介:SWAG - Secure Web Application Gateway (formerly known as letsencrypt, no relation to Let's Encrypt™) sets up an Nginx webserver and reverse proxy with php support and a built-in certbot client that automates free SSL server certificate generation and renewal processes (Let's Encrypt and ZeroSSL). It also contains fail2ban for intrusion prevention.
    quietjosen
        15
    quietjosen  
    OP
       336 天前
    @mohumohu
    @daisyfloor
    感谢推荐 Caddy ,很香,我准备把服务器上的 LNMP 替换成 Caddy 了。
    kilvn
        16
    kilvn  
       335 天前
    lihexinkai
        17
    lihexinkai  
       333 天前
    感谢,很有用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5045 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 05:41 · PVG 13:41 · LAX 21:41 · JFK 00:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.