docs(mixapi): 补充 buildx 多架构构建并调整镜像仓库

- Dockerfile/compose 头部与 readme 补充 buildx 多架构(amd64+arm64)构建示例
- IMAGE_TAG 默认改指私有仓库 hub.6t7.net/cnphpbb/mixapi 并同步各处 tag
This commit is contained in:
cnphpbb
2026-09-03 21:54:10 +08:00
parent 4afb627314
commit 9b823ba34e
5 changed files with 53 additions and 18 deletions
+24 -7
View File
@@ -9,18 +9,35 @@ MIXAPI 基于 New-API/One-API 二次开发,配置语义与 `../newapi` 同源
MIXAPI 官方**没有发布 Docker Hub 镜像**:仓库 CI 与 README 的分发方式是
GitHub Release 二进制(或自行 `docker build`)。本目录 `Dockerfile` 即采用
官方方式——构建时从 GitHub Release 下载与 `IMAGE_TAG_VER` 同名的二进制
官方方式——构建时从 GitHub Release 下载与 `IMAGE_TAG_VER` 同名的二进制
`IMAGE_TAG` 默认指向私有仓库 `hub.6t7.net/cnphpbb/mixapi`
```bash
docker build --build-arg MIXAPI_VER=v2.5.1cl -t mixapi:v2.5.1cl ./mixapi
# 本地单架构构建(-t 与 env.cfg 的 IMAGE_TAG 一致;打同名 tag 后 compose 直接使用)
docker build --build-arg MIXAPI_VER=v2.5.1cl -t hub.6t7.net/cnphpbb/mixapi:v2.5.1cl ./mixapi
```
- 版本号:`env.cfg``IMAGE_TAG_VER`(默认 `v2.5.1cl`),需与
https://github.com/aiprodcoder/MIXAPI/releases 的 tag 同名;
- 架构:构建机 x86_64 → amd64aarch64 → arm64,跨架构构建可用
`--build-arg MIXAPI_ARCH=amd64` 显式指定;
- 若已把镜像推送到私有仓库(如 `hub.tp229.com:3500/mixapi`),把 `env.cfg`
`IMAGE_TAG` 改为仓库地址,即可跳过本地构建,走常规 `pull`
- 换用其它私有仓库时,同步修改 `env.cfg``IMAGE_TAG` 与构建命令里的仓库地址。
### 多架构构建(buildx
一台构建机同时产出 amd64 + arm64(如 x86_64 服务器 + 树莓派)并推送私有仓库时,
用 buildx(多平台构建需 QEMU/binfmt,先 `docker buildx create --use`
多平台产物必须 `--push``--load` 只能装载本机架构镜像):
```bash
docker buildx build \
--platform linux/amd64,linux/arm64 \
--build-arg MIXAPI_VER=v2.5.1cl \
-t hub.6t7.net/cnphpbb/mixapi:v2.5.1cl \
--push ./mixapi
```
推送完成后各主机直接 `docker compose ... up -d`(或先 `docker compose ... pull`)即可。
## 部署方式 A:全容器化独立栈(stack.yml
@@ -31,8 +48,8 @@ docker build --build-arg MIXAPI_VER=v2.5.1cl -t mixapi:v2.5.1cl ./mixapi
mkdir -pv /data/volumes/mixapi/{data,logs,redis,pgsql_data}
cp mixapi/env.cfg.example mixapi/env.cfg && vim mixapi/env.cfg # 填密码
# 2. 构建镜像(首次或升级版本时)
docker build --build-arg MIXAPI_VER=v2.5.1cl -t mixapi:v2.5.1cl ./mixapi
# 2. 构建镜像(首次或升级版本时-t 与 env.cfg 的 IMAGE_TAG 一致
docker build --build-arg MIXAPI_VER=v2.5.1cl -t hub.6t7.net/cnphpbb/mixapi:v2.5.1cl ./mixapi
# 3. 启动 / 状态 / 日志
docker compose -p mixapi --env-file ./mixapi/env.cfg -f ./mixapi/stack.yml up -d
@@ -60,7 +77,7 @@ CREATE DATABASE mixapi OWNER mixapi;
```bash
mkdir -pv /data/volumes/mixapi/{data,logs}
cp mixapi/env.cfg.example mixapi/env.cfg && vim mixapi/env.cfg # 填 prod-postgres 密码
docker build --build-arg MIXAPI_VER=v2.5.1cl -t mixapi:v2.5.1cl ./mixapi
docker build --build-arg MIXAPI_VER=v2.5.1cl -t hub.6t7.net/cnphpbb/mixapi:v2.5.1cl ./mixapi
docker compose -p mixapi-host --env-file ./mixapi/env.cfg -f ./mixapi/stack.host.yml up -d
```