
oneuptime/status-pageOneUptime是一个功能全面的开源监控解决方案,提供从基础监控到高级SLA管理的完整功能集。该Docker镜像封装了OneUptime的所有核心组件,使部署和维护变得简单高效。
创建docker-compose.yml文件:
yamlversion: '3.8' services: oneuptime: image: oneuptime/oneuptime:latest restart: always ports: - "3000:3000" # Web界面 - "8080:8080" # API服务 environment: - NODE_ENV=production - DATABASE_URL=postgresql://user:password@postgres:5432/oneuptime - REDIS_URL=redis://redis:6379 - JWT_SECRET=your-secure-jwt-secret - ENCRYPTION_KEY=your-encryption-key depends_on: - postgres - redis - mongo - elasticsearch postgres: image: postgres:14 restart: always environment: - POSTGRES_USER=user - POSTGRES_PASSWORD=password - POSTGRES_DB=oneuptime volumes: - postgres-data:/var/lib/postgresql/data redis: image: redis:alpine restart: always volumes: - redis-data:/data mongo: image: mongo:5 restart: always volumes: - mongo-data:/data/db elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.14.0 restart: always environment: - discovery.type=single-node - "ES_JAVA_OPTS=-Xms512m -Xmx512m" volumes: - elasticsearch-data:/usr/share/elasticsearch/data volumes: postgres-data: redis-data: mongo-data: elasticsearch-data:
启动服务:
bashdocker-compose up -d
bash# 首先启动依赖服务 docker run -d --name oneuptime-postgres -e POSTGRES_USER=user -e POSTGRES_PASSWORD=password -e POSTGRES_DB=oneuptime postgres:14 docker run -d --name oneuptime-redis redis:alpine docker run -d --name oneuptime-mongo mongo:5 docker run -d --name oneuptime-elasticsearch -e discovery.type=single-node -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" docker.elastic.co/elasticsearch/elasticsearch:7.14.0 # 启动OneUptime docker run -d --name oneuptime \ -p 3000:3000 \ -p 8080:8080 \ -e NODE_ENV=production \ -e DATABASE_URL=postgresql://user:password@oneuptime-postgres:5432/oneuptime \ -e REDIS_URL=redis://oneuptime-redis:6379 \ -e MONGO_URL=mongodb://oneuptime-mongo:27017/oneuptime \ -e ELASTICSEARCH_URL=[***] \ -e JWT_SECRET=your-secure-jwt-secret \ -e ENCRYPTION_KEY=your-encryption-key \ --link oneuptime-postgres:postgres \ --link oneuptime-redis:redis \ --link oneuptime-mongo:mongo \ --link oneuptime-elasticsearch:elasticsearch \ oneuptime/oneuptime:latest
| 变量名 | 描述 | 默认值 |
|---|---|---|
NODE_ENV | 运行环境 | production |
PORT | Web服务端口 | 3000 |
API_PORT | API服务端口 | 8080 |
DATABASE_URL | PostgreSQL数据库连接URL | 无 |
REDIS_URL | Redis连接URL | 无 |
MONGO_URL | MongoDB连接URL | 无 |
ELASTICSEARCH_URL | Elasticsearch连接URL | 无 |
JWT_SECRET | JWT令牌加密密钥 | 无 |
ENCRYPTION_KEY | 数据加密密钥 | 无 |
SMTP_HOST | SMTP服务器地址 | 无 |
SMTP_PORT | SMTP服务器端口 | 无 |
SMTP_USERNAME | SMTP认证用户名 | 无 |
SMTP_PASSWORD | SMTP认证密码 | 无 |
FROM_EMAIL | 系统邮件发送地址 | *** |
OneUptime需要持久化存储以下数据:
建议为所有数据库服务配置卷挂载以确保数据持久化。
bash# 使用Docker Compose docker-compose pull docker-compose up -d # 使用Docker Run docker pull oneuptime/oneuptime:latest docker stop oneuptime docker rm oneuptime # 然后重新运行启动命令
建议定期备份所有数据库卷。对于PostgreSQL,可以使用以下命令创建备份:
bashdocker exec -t oneuptime-postgres pg_dump -U user oneuptime > backup_$(date +%Y%m%d).sql
OneUptime根据MIT许可证开源,详情请参见项目仓库中的LICENSE文件。






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务