🐳 使用 Docker Compose 部署
快速开始
在开始部署之前,建议先阅读《写在前面》,快速了解 RollCode 的基本信息。
📋 前置准备
环境要求
重要提示
建议按照 Docker 官方文档进行安装,因为部分 Linux 发行版的软件仓库中的 Docker 版本可能较旧。
🚀 部署步骤
1. 创建项目目录
创建并进入项目目录
mkdir ~/rollcode && cd ~/rollcode
数据存储说明
所有 RollCode 的数据都将保存在此目录中,请确保妥善保管。
2. 配置 Docker Compose
- RollCode
- RollCode + MinIO
~/rollcode/docker-compose.yaml
services:
rollcode:
image: rollcode/rollcode:beta
restart: on-failure:3
ports:
- ${ROLLCODE_PORT}:8080
- ${ROLLCODE_HTTPS_PORT}:8443
volumes:
- ./.rollcode_data:/data
networks:
- rollcode_network
~/rollcode/docker-compose.yaml
services:
network-service:
image: alpine
restart: always
ports:
- ${ROLLCODE_PORT}:8080
- ${ROLLCODE_HTTPS_PORT}:8443
- 9090:9090
- ${MINIO_PORT}:${MINIO_PORT}
command: tail -f /dev/null
networks:
- rollcode_network
rollcode:
image: rollcode/rollcode:beta
restart: on-failure:3
volumes:
- ./.rollcode_data:/data
network_mode: 'service:network-service'
minio:
image: minio/minio
network_mode: 'service:network-service'
volumes:
- './.minio_data:/etc/minio/data'
environment:
- 'MINIO_API_CORS_ALLOW_ORIGIN=*'
env_file:
- .env
restart: always
healthcheck:
test: ['CMD', 'curl', '-f', 'http://localhost:${MINIO_PORT}/minio/health/live']
interval: 30s
timeout: 10s
retries: 3
entrypoint: >
/bin/sh -c "
minio server /etc/minio/data --address ':${MINIO_PORT}' --console-address ':9090' &
MINIO_PID=\$!
while ! curl -s http://localhost:${MINIO_PORT}/minio/health/live; do
echo 'Waiting for MinIO to start...'
sleep 1
done
sleep 5
mc alias set myminio http://localhost:${MINIO_PORT} ${MINIO_ROOT_USER} ${MINIO_ROOT_PASSWORD}
echo 'Creating bucket ${MINIO_ROLLCODE_BUCKET}'
mc mb myminio/${MINIO_ROLLCODE_BUCKET}
mc anonymous set download myminio/${MINIO_ROLLCODE_BUCKET}
wait \$MINIO_PID
"
networks:
rollcode_network:
driver: bridge
3. 配置说明
配置示例:
~/rollcode/.env
ROLLCODE_VERSION=beta-25043002
ROLLCODE_PORT=8080
ROLLCODE_HTTPS_PORT=8443
MINIO_PORT=9000
MINIO_ROOT_USER=minio
MINIO_ROOT_PASSWORD=minio123
MINIO_ROLLCODE_BUCKET=rollcode
RollCode 服务配置
参数 | 说明 | 示例值 |
---|---|---|
ROLLCODE_PORT | RollCode http端口 | 8080 |
ROLLCODE_HTTPS_PORT | RollCode https端口 | 8443 |
MinIO 服务配置
参数 | 说明 | 示例值 |
---|---|---|
MINIO_PORT | MinIO 端口 | 9000 |
MINIO_ROOT_USER | MinIO 用户名 | minio |
MINIO_ROOT_PASSWORD | MinIO 密码 | minio123 |
MINIO_ROLLCODE_BUCKET | MinIO 桶名 | rollcode |
4. 启动服务
# 启动所有服务
docker-compose up -d
# 查看实时日志
docker-compose logs -f
5. 激活 RollCode
完成服务启动后,请按照激活指南完成 RollCode 的激活。
6. 更新服务
要更新 RollCode 服务,请按以下步骤操作:
- 修改
docker-compose.yaml
中的镜像版本 - 执行更新命令:
docker-compose up -d
🔧 常见问题
如何查看服务状态?
# 查看所有容器状态
docker-compose ps
# 查看服务日志
docker-compose logs -f
如何备份数据?
所有数据都存储在 ~/rollcode
(具体目录根据实际情况)工作目录下,建议定期备份以下目录:
.rollcode_data
.minio_data