需完成容器运行时、依赖服务、配置密钥及数据库初始化等关键环节:先安装Docker与Compose,再准备目录与Git,接着构建镜像并生成SECRET_KEY,然后执行upgrade初始化数据库并创建管理员账户,最后docker-compose up -d启动服务。

如果您希望在Linux服务器上自托管Sentry以实现前端与后端错误的集中追踪与告警,则需完成容器运行时、依赖服务、配置密钥及数据库初始化等关键环节。以下是完成Sentry私有化部署的完整操作流程:
一、安装Docker与Docker Compose
Docker是运行Sentry容器化服务的基础运行时环境,Docker Compose用于编排Sentry所需的PostgreSQL、Redis、SMTP等多组件服务。必须确保Docker版本不低于20.10,Docker Compose不低于2.0.1。
1、卸载旧版Docker(如存在):yum remove docker docker-common docker-selinux docker-engine
2、安装dnf及阿里云Docker CE镜像源:yum -y install dnf && dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、启用edge仓库并安装Docker CE:dnf -y install docker-ce --nobest
4、启动Docker服务并设为开机自启:systemctl daemon-reload && systemctl start docker && systemctl enable docker
5、安装Python 3与pip3,并升级pip:dnf -y install python3 pip3 && pip3 install --upgrade pip
6、安装docker-compose并创建系统级软链接:pip3 install docker-compose && ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
二、准备Sentry运行目录与依赖组件
需预先创建持久化数据目录,避免容器重启导致PostgreSQL与Sentry配置丢失;同时确认Git可用,用于拉取官方onpremise部署模板。
1、安装Git:yum -y install git
2、克隆Sentry官方onpremise仓库:git clone https://github.com/getsentry/onpremise.git
3、进入项目目录并创建本地数据挂载路径:cd onpremise && mkdir -p data/{sentry,postgres}
4、验证目录权限归属(建议使用非root用户执行后续步骤):chown -R $USER:$USER data/
三、构建镜像并生成密钥
构建所有Sentry服务镜像可确保版本一致性;生成的SENTRY_SECRET_KEY将作为会话加密与签名核心密钥,必须安全保存且不可重复使用。
1、执行镜像构建:docker-compose build
2、生成随机密钥并记录输出结果:docker-compose run --rm web config generate-secret-key
3、将上一步输出的密钥字符串填入docker-compose.yml中environment区块下的SENTRY_SECRET_KEY字段,格式为:SENTRY_SECRET_KEY: 'your-generated-key-here'
四、初始化数据库与创建管理员账户
该步骤将自动执行PostgreSQL建表、索引、迁移脚本,并引导创建首个超级用户。此账户为Sentry Web UI唯一登录凭证,密码需强复杂度且务必离线保存。
1、执行数据库迁移与初始化:docker-compose run --rm web upgrade
2、根据终端交互提示输入邮箱地址(必须为有效格式):admin@example.com
3、连续两次输入管理员密码(至少8位,含大小写字母与数字):S3ntrY@2026!
五、启动全部Sentry服务
所有服务将以守护进程方式后台运行,包括Web服务(9000端口)、worker任务队列、cron定时任务及Nginx反向代理(若启用)。默认不暴露SMTP与Redis端口至宿主机外部网络。
1、启动全部容器服务:docker-compose up -d
2、检查容器运行状态:docker-compose ps
3、验证Web服务是否就绪(等待约60秒后执行):curl -I http://localhost:9000 | head -1
4、通过浏览器访问:http://[服务器IP]:9000,使用步骤四中创建的邮箱与密码登录

















