chore(release): .env.deploy 配 BUILD_PROXY 时构建镜像自动经代理
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
This commit is contained in:
1 parent
d0cce8a244
commit
69d820a6bf
4 files changed
+13
No files matched your search
@@ -83,3 +83,6 @@ CAMOFOX_ACCESS_KEY=
|
||||
# [email protected]
|
||||
# TLS_PORT=443
|
||||
# TLS_BIND=0.0.0.0
|
||||
|
||||
# 构建镜像时的出站代理(可选;直连下载 Deno 运行时可能卡住时填,如经宿主中继 http://172.17.0.1:7891)
|
||||
BUILD_PROXY=
|
||||
@@ -45,3 +45,4 @@
|
||||
28. 一路用 `pkill -f src/main.ts` 收尾,把另一路 worktree 的 API 进程也杀了(命令行相同)→ **规则**:只按自己记下的 pid,或按进程工作目录在本 worktree 下的进程来杀;不要按命令行模糊匹配。
|
||||
29. 两路各自合理的改动合起来出问题:B 路以「种子被占用」取消计划,C 路让「取消的计划立即让位」,合并后会取消 → 重评 → 再取消空转 → **规则**:协调者合并时专门看跨线交互(状态取值、原因码、让位 / 重试规则),补一条跨线测试。
|
||||
|
||||
30. 发布构建在镜像里下载 Deno 运行时(`dl.deno.land`),构建容器直连外网卡了两个多小时没报错(v0.3.29)→ **规则**:`.env.deploy` 配 `BUILD_PROXY`,`release.sh` 自动带构建代理参数;发布超过 10 分钟没动静先看构建日志卡在哪。
|
||||
@@ -6,6 +6,8 @@ compose 默认有三个服务:`app` + `postgres` + `camofox`(浏览器服务,只
|
||||
|
||||
## 1. 构建镜像
|
||||
|
||||
构建阶段会下载 Deno 运行时等外网资源。直连不稳时在 `.env.deploy` 配 `BUILD_PROXY`(如经宿主中继 `http://172.17.0.1:7891`),`deno task release` 会自动带上 `--build-arg HTTP(S)_PROXY`;代理只用于构建,不进镜像。
|
||||
|
||||
```sh
|
||||
docker build -t uhd-media-tool:latest . # 或 docker compose --env-file .env.deploy build
|
||||
APP_VERSION=v0.3.11 docker compose --env-file .env.deploy build app # 示例:发布时填写对应版本,写进 web 的 version.json
|
||||
|
||||
@@ -63,8 +63,15 @@ set_env SOURCE_REVISION "$head"
|
||||
|
||||
if [ $BUILD -eq 1 ]; then
|
||||
echo "▶ 构建 uhd-media-tool:$tag"
|
||||
# 构建阶段要下载 Deno 运行时等外网资源;.env.deploy 配了 BUILD_PROXY 时经它构建(直连可能卡住,见 lessons #30)
|
||||
build_proxy=$(sed -n 's/^BUILD_PROXY=//p' "$ENV_FILE" | tail -1)
|
||||
if [ -n "$build_proxy" ]; then
|
||||
compose build --build-arg HTTPS_PROXY="$build_proxy" --build-arg HTTP_PROXY="$build_proxy" \
|
||||
--build-arg NO_PROXY=localhost,127.0.0.1 app
|
||||
else
|
||||
compose build app
|
||||
fi
|
||||
fi
|
||||
echo "▶ 替换 app"
|
||||
compose up -d --no-deps app
|
||||
|
||||
|
||||
Reference in new issue
Block a user