当前位置: 首页 > news >正文

docker部署笔记软件memos,通过5320端口访问,如何通过nginx反向代理配置访问?

互联网各领域资料分享专区(不定期更新):

Sheet


正文

以下是使用Nginx反向代理部署Memos的步骤:


1. 确保Docker已正确运行Memos

bash

docker run -d \
  --name memos \
  -p 5320:5230 \
  -v /your/path/data:/var/opt/memos \
  ghcr.io/usememos/memos:latest
  • 确认容器运行状态:docker ps

  • 验证直接访问:http://服务器IP:5320


2. 安装Nginx(若未安装)

bash

# Ubuntu/Debian
sudo apt update && sudo apt install nginx

# CentOS/RHEL
sudo yum install epel-release && sudo yum install nginx

3. 配置Nginx反向代理

创建配置文件:

bash

sudo nano /etc/nginx/sites-available/memos.conf
HTTP基础配置(端口80)

nginx

server {
    listen 80;
    server_name memos.your-domain.com;  # 改为你的域名

    location / {
        proxy_pass http://localhost:5320;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
HTTPS推荐配置(使用Let's Encrypt)

bash

# 获取证书(先确保域名解析已生效)
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d memos.your-domain.com

自动生成的配置示例:

nginx

server {
    server_name memos.your-domain.com;
    listen 443 ssl http2;
    
    ssl_certificate /etc/letsencrypt/live/memos.your-domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/memos.your-domain.com/privkey.pem;

    location / {
        proxy_pass http://localhost:5320;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    server_name memos.your-domain.com;
    return 301 https://$host$request_uri;
}

4. 启用配置并重启Nginx

bash

sudo ln -s /etc/nginx/sites-available/memos.conf /etc/nginx/sites-enabled/
sudo nginx -t  # 测试配置
sudo systemctl restart nginx

5. 防火墙配置(如有需要)

bash

# 开放HTTP/HTTPS端口
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

6. 验证访问

  1. 直接访问:http://服务器IP:5320

  2. 通过域名访问:https://memos.your-domain.com


常见问题排查

  1. 502 Bad Gateway 错误:

    • 检查Memos容器是否运行:docker ps

    • 查看容器日志:docker logs memos

    • 确认Nginx的proxy_pass地址是否正确

  2. SSL证书问题

    • 续期证书:sudo certbot renew --dry-run

    • 检查证书路径权限

  3. 缓存问题

    • 强制刷新浏览器缓存:Ctrl+F5

    • 清除Nginx缓存:sudo rm -rf /var/cache/nginx/*


通过以上步骤,即可实现通过Nginx反向代理安全访问Memos服务。建议始终使用HTTPS以保障数据传输安全。

相关文章:

  • 2025.2.16
  • Windows逆向工程入门之堆栈结构与信息获取
  • Qt 6.8版本 自制windows下运行软件<一>——串口调试助手
  • 在linux系统中安装Anaconda,并使用conda
  • 游戏引擎学习第106天
  • Moya 网络框架
  • Redis 的集群 --- 数据分开扛
  • 汇率波动(Exchange Rate Fluctuations)的逻辑:货币升值与贬值的深层原因解析(中英双语)
  • Windows11安装.NET35
  • 【Springboot3+vue3】从零到一搭建Springboot3+vue3前后端分离项目之后端环境搭建
  • ASP.NET配置文件多种方式读取
  • 求解插值多项式及余项表达式
  • C语言之easyX
  • 人形机器人 - 仿生机器人核心技术与大小脑
  • 使用 Python paramiko 自动备份设备配置实验
  • 回调函数
  • 校验v-for中的form表单
  • 三、Java中七大常用锁实战
  • firefox的升级
  • 机器学习:k近邻
  • 徐丹任武汉大学药学院院长:研究领域在国际上处领跑地位
  • 竞彩湃|德甲保级白热化,都灵主帅直面旧主
  • 5月资金面前瞻:政府债净融资规模预计显著抬升,央行有望提供流动性支持
  • 党政机关停车场免费、食堂开放,多地“五一”游客服务暖心周到
  • 神十九都带回了哪些实验样品?果蝇等生命类样品已交付科学家
  • 白玉兰奖征片综述丨国产剧集创作的此消彼长