00404c8b45
- docker-compose.prod.yml: 只绑 127.0.0.1、命名卷、mem 1g、密码走 .env(:? 守卫) - nginx/observe.shaguabijia.com.conf: 子域名反代 + IP白名单 + TLS + WS 透传 - .gitignore: 忽略 prod 密码 .env - README: 生产部署步骤 + UI 访问两方案(SSH隧道推荐) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
28 lines
1.3 KiB
YAML
28 lines
1.3 KiB
YAML
# 生产用 OpenObserve(单机)。相对本地版 docker-compose.yml 的区别:
|
|
# - 端口只绑 127.0.0.1 → 公网/外网都到不了(UI 访问走 SSH 隧道或 nginx 反代,见 README)
|
|
# - root 密码走环境变量(放同目录 .env,已 gitignore,勿提交)
|
|
# - 数据用 docker 命名卷(免 bind-mount 权限坑)+ 内存上限(与 app/PG 共存防抢内存)
|
|
#
|
|
# 用法:
|
|
# 1) 本目录建 .env(已 gitignore):
|
|
# OO_ROOT_PASSWORD=<强随机串> # 生成: python -c "import secrets;print(secrets.token_urlsafe(24))"
|
|
# 2) docker compose -f docker-compose.prod.yml up -d
|
|
# 3) 开机自起: sudo systemctl enable docker
|
|
services:
|
|
openobserve:
|
|
image: public.ecr.aws/zinclabs/openobserve:latest
|
|
container_name: openobserve
|
|
ports:
|
|
- "127.0.0.1:5080:5080" # ★只绑本机;写成 5080:5080 = 裸暴露公网,别这么干
|
|
environment:
|
|
ZO_ROOT_USER_EMAIL: "admin@shaguabijia.com"
|
|
ZO_ROOT_USER_PASSWORD: "${OO_ROOT_PASSWORD:?请先在 deploy/openobserve/.env 里设 OO_ROOT_PASSWORD}"
|
|
ZO_DATA_DIR: "/data"
|
|
volumes:
|
|
- openobserve_data:/data # docker 命名卷;想固定到某块盘改成 bind: /your/disk:/data
|
|
restart: unless-stopped
|
|
mem_limit: 1g # 按机器内存调;查询重可给 2g
|
|
|
|
volumes:
|
|
openobserve_data:
|