Umami Docker国内镜像部署指南
2025-08-03 23:18:46
5
以下是使用纯 Docker 命令(非 Docker Compose)部署 Umami 的完整指南,针对国内网络环境优化:
部署步骤
# 创建网络(容器通信用) docker network create umami-net # 创建数据目录 mkdir -p umami-docker/{sql,data} # 下载数据库初始化脚本(国内加速) curl -o umami-docker/sql/schema.postgresql.sql https://ghproxy.com/https://raw.githubusercontent.com/umami-software/umami/master/sql/schema.postgresql.sql # 启动 PostgreSQL 数据库(使用阿里云镜像) docker run -d --name umami-db \ --network umami-net \ -e POSTGRES_DB=umami \ -e POSTGRES_USER=umami \ -e POSTGRES_PASSWORD=umami \ -v $(pwd)/umami-docker/sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.sql:ro \ -v $(pwd)/umami-docker/data:/var/lib/postgresql/data \ registry.cn-hangzhou.aliyuncs.com/library/postgres:12-alpine # 等待数据库初始化完成(约30秒) sleep 30 # 生成随机 HASH_SALT(重要!) HASH_SALT=$(openssl rand -base64 32) # 启动 Umami 应用(使用国内镜像代理) docker run -d --name umami \ --network umami-net \ -p 3000:3000 \ -e DATABASE_URL=postgresql://umami:umami@umami-db:5432/umami \ -e DATABASE_TYPE=postgresql \ -e HASH_SALT=$HASH_SALT \ dockerproxy.com/ghcr.io/umami-software/umami:postgresql-latest
访问信息
访问地址: http://服务器IP:3000
默认账号:
admin
默认密码:
umami
管理命令
操作 | 命令 |
---|---|
查看日志 | docker logs -f umami |
停止服务 | docker stop umami umami-db |
启动服务 | docker start umami-db && docker start umami |
完全删除 | docker rm -f umami umami-db && docker network rm umami-net |
备份数据 | cp -r umami-docker/data umami-backup |
配置说明
镜像加速:
PostgreSQL 使用阿里云镜像
registry.cn-hangzhou.aliyuncs.com/library/postgres:12-alpine
Umami 使用代理镜像
dockerproxy.com/ghcr.io/umami-software/umami:postgresql-latest
数据持久化:
数据库文件存储在
umami-docker/data
目录初始化脚本在
umami-docker/sql
目录安全增强:
首次登录后立即修改管理员密码
生产环境建议修改数据库密码(通过
-e POSTGRES_PASSWORD=新密码
参数)
故障排查
应用无法启动:
# 检查日志 docker logs umami # 重启容器 docker restart umami
数据库连接问题:
# 检查数据库日志 docker logs umami-db # 测试数据库连接 docker exec -it umami-db psql -U umami -d umami
端口冲突:
# 停止容器后更换端口启动 docker run ... -p 新端口:3000 ...
此方案完全使用 Docker 命令部署,无需 Docker Compose,适合国内网络环境,并确保数据持久化存储。