docker compose安装mindoc 后添加https访问反向代理配置教程

1.先安装mindoc ,数据库使用SQLite

docker-compose .yml

复制代码
version: '3'

services:
  mindoc:
    # 沿用你指定的镜像,确保与原docker run命令一致,避免镜像拉取报错
    image: registry.cn-hangzhou.aliyuncs.com/mindoc-org/mindoc:v2.2-beta.2
    container_name: mindoc
    restart: always # 容器异常时自动重启,与--restart always对应
    ports:
      - "8185:8181" # 宿主机8185端口映射容器8181端口,与原命令端口一致,避免冲突
    environment:
      # 完整保留原docker run命令中的所有环境变量,适配SQLite配置
      MINDOC_RUN_MODE: prod # 运行模式:生产环境,提升服务稳定性和性能
      MINDOC_DB_ADAPTER: sqlite3 # 数据库类型:SQLite,无需额外部署数据库
      MINDOC_DB_DATABASE: ./database/mindoc.db # SQLite数据库文件路径,与挂载目录对应
      MINDOC_CACHE: "true" # 启用缓存,提升服务响应速度
      MINDOC_CACHE_PROVIDER: file # 缓存存储方式:文件存储
      MINDOC_ENABLE_EXPORT: "false" # 禁用导出功能,可根据需求修改为true
      MINDOC_BASE_URL: "" # 基础URL,无需配置时留空
      MINDOC_CDN_IMG_URL: "" # 图片CDN地址,无需配置时留空
      MINDOC_CDN_CSS_URL: "" # CSS文件CDN地址,无需配置时留空
      MINDOC_CDN_JS_URL: "" # JS文件CDN地址,无需配置时留空
    volumes:
      # 完整保留原docker run命令中的所有挂载目录,确保数据持久化和配置生效
      - /home/docker/mindoc/conf:/mindoc/conf # 挂载配置文件目录,支持自定义Mindoc配置
      - /home/docker/mindoc/static:/mindoc/static # 挂载静态资源目录,保障页面正常显示
      - /home/docker/mindoc/views:/mindoc/views # 挂载视图模板目录,支持自定义页面样式
      - /home/docker/mindoc/uploads:/mindoc/uploads # 挂载上传文件目录,实现附件持久化
      - /home/docker/mindoc/runtime:/mindoc/runtime # 挂载运行时目录,存储缓存、日志等临时数据
      - /home/docker/mindoc/database:/mindoc/database # 挂载数据库目录,SQLite文件持久化(核心)

2.添加一个静态网站

3.添加SSL申请 ,使用宝塔能自动继签

4.反向代理配置,修改刚创建网站的配置文件

注意需要修改几个地方:

域名,proxy_pass

复制代码
# server代表的是nginx其中的一个服务器
server
{
    listen 80;
    listen 443 ssl  ;
    listen [::]:443 ssl  ;
    http2 on;
    listen [::]:80;
    server_name doc.npspro.cn;   #填访问要https访问的域名
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/server/panel/vhost/cert/doc.npspro.cn;
    include /www/server/panel/vhost/nginx/well-known/doc.npspro.cn.conf;
    #CERT-APPLY-CHECK--START
    # 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
    include /www/server/panel/vhost/nginx/well-known/doc.npspro.cn.conf;
    #CERT-APPLY-CHECK--END
    
    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    ssl_certificate    /www/server/panel/vhost/cert/doc.npspro.cn/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/doc.npspro.cn/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_tickets on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
 location / {
        try_files /_not_exists_ @backend;
    }
    # 这里为具体的服务代理配置
    location @backend {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host            $http_host;
        proxy_set_header   X-Forwarded-Proto $scheme;

        #此处配置 MinDoc 程序的地址和端口号
        proxy_pass http://43.163.242.147:8185;
    }
    #Monitor-Config-Start 网站监控报表日志发送配置
    access_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=11__access monitor;
    error_log syslog:server=unix:/tmp/bt-monitor.sock,nohostname,tag=11__error;
    #Monitor-Config-End
}

proxy_pass填写刚安装mindoc的IP实际访问地址

相关推荐
Lyra_Infra10 小时前
MySQL Docker 误删恢复:binlog PITR
mysql·docker·命令行
wxchyy13 小时前
手把手教你入门云计算(二):这些技术改变了世界,你也能轻松掌握
hadoop·阿里云·docker·云原生·华为云·云计算·运维开发
CZIDC13 小时前
华为服务器TS200-2280 V2 iBMC导入SSL证书后问题案例分析
服务器·https·ssl
名字还没想好☜13 小时前
Prometheus 告警实战:写 alerting rules、用 Alertmanager 做路由分组与抑制
运维·前端·javascript·docker·kubernetes·prometheus
请你吃div13 小时前
Node 后端项目 Docker 自动部署教程(GitHub + 宝塔 + Self-hosted Runner)
后端·docker·node.js
百年੭ ᐕ)੭*⁾⁾14 小时前
Redash部署指南(Windows docker部署)
大数据·windows·docker·数据可视化·redash
西峰u15 小时前
Java多线程初阶完整总结|线程、锁、volatile、等待通知、常见案例
java·开发语言·jvm
2401_8346369915 小时前
Docker 容器化技术全解:从镜像构建到容器编排的完整教案2
运维·docker·容器
H_老邪15 小时前
JVM 遇到的问题-1.1
jvm
SKH.16 小时前
Linux软件编程(5)线程
java·linux·jvm