官方文档:https://ops.spug.cc/docs/install-docker
系统:centos7.9
创建docker-compose.yml
mkdir spug
cd spug
vim docker-compose.yml
version: "3.3"
services:
db:
image: mariadb:10.8.2
container_name: spug-db
restart: always
command: --port 3306 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
volumes:
- /data/spug/mysql:/var/lib/mysql
environment:
- MYSQL_DATABASE=spug
- MYSQL_USER=spug
- MYSQL_PASSWORD=spug.cc
- MYSQL_ROOT_PASSWORD=spug.cc
spug:
image: openspug/spug-service
container_name: spug
privileged: true
restart: always
volumes:
- /data/spug/service:/data/spug
- /data/spug/repos:/data/repos
ports:
# 如果80端口被占用可替换为其他端口,例如: - "8000:80"
- "80:80"
environment:
- MYSQL_DATABASE=spug
- MYSQL_USER=spug
- MYSQL_PASSWORD=spug.cc
- MYSQL_HOST=db
- MYSQL_PORT=3306
depends_on:
- db
监听的80被占用可替换成其他端口;数据库账号密码可自定义;
否则提示端口被占用,如下所示
需要重新编辑docker-compose.yml文件,替换端口后重新启动容器
启动容器
docker compose up -d
初始化
项目初始化并创建管理员账户
以下操作会创建一个用户名为 admin
密码为 spug.cc
的管理员账户,可自行替换管理员账户/密码。
docker exec spug init_spug admin spug.cc
访问测试
在浏览器中输入 http://localhost:端口号
访问(默认账户密码在初始化时设置)。
web首页
主机管理
版本升级
# 默认更新到最新版本
# spug 是容器名称,也可以替换为自己的容器ID
docker exec -i spug python3 /data/spug/spug_api/manage.py update
# 更新完成后重启容器
docker restart spug