From 7dc9849e85df63162cbbc41f646380333f6e2bc0 Mon Sep 17 00:00:00 2001 From: chaos Date: Tue, 17 Mar 2026 00:23:16 +0800 Subject: [PATCH] Add distribution release script and registry documentation --- README.md | 15 +++++++++++++++ release.sh | 28 ++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100755 release.sh diff --git a/README.md b/README.md index 2b5b584..53fba2d 100644 --- a/README.md +++ b/README.md @@ -38,3 +38,18 @@ docker build -t vox-fast -f Dockerfile.fast . # 3. 运行 docker run -p 1995:1995 -v $(pwd)/data.db:/app/data.db vox-fast ``` + +### 4. 发布与分发 (镜像分发模式) +如果您想让其他用户像下载标准镜像一样直接使用: +```bash +# 1. 运行发布脚本(执行本地编译 + 镜像打包) +./release.sh + +# 2. 推送到您的 Gitea 注册表 +docker push gitea.qxy1828.com/chaos/vox:latest +``` +用户端只需: +```bash +docker pull gitea.qxy1828.com/chaos/vox:latest +docker run -p 1995:1995 -v /path/to/data.db:/app/data.db gitea.qxy1828.com/chaos/vox:latest +``` diff --git a/release.sh b/release.sh new file mode 100755 index 0000000..6a29551 --- /dev/null +++ b/release.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +# Vox 发布脚本:本地编译并打包 Docker 镜像 +# 这种方式生成的镜像体积最小,且部署时无需在服务器上进行编译。 + +IMAGE_NAME="vox-app" +REGISTRY="gitea.qxy1828.com/chaos/vox" +TAG="latest" + +echo "1. 清理并开始本地编译..." +rm -rf build/ +npm install +npm run build + +echo "2. 构建生产级 Docker 镜像..." +docker build -t ${IMAGE_NAME}:${TAG} -f Dockerfile.fast . + +echo "3. 为注册表打标签..." +docker tag ${IMAGE_NAME}:${TAG} ${REGISTRY}:${TAG} + +echo "------------------------------------------------" +echo "构建完成!" +echo "本地镜像名: ${IMAGE_NAME}:${TAG}" +echo "拟推送地址: ${REGISTRY}:${TAG}" +echo "" +echo "如需推送到 Gitea 仓库,请运行:" +echo "docker push ${REGISTRY}:${TAG}" +echo "------------------------------------------------"