mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 04:35:33 +08:00
fix(stack): 修正构建上下文路径层级 ../../.. 并将 base-build 重命名为 author
This commit is contained in:
@@ -138,8 +138,8 @@ jobs:
|
||||
fi
|
||||
|
||||
# B-route: docker-serve compose 原始路径基于 source/stack/docker-serve/,
|
||||
# 使用 ../.. 引用项目根;远端 RELEASE_DIR 为扁平结构,需改回 .
|
||||
sed -i 's|../..|.|g' "${RELEASE_DIR}/docker-compose.yaml"
|
||||
# 使用 ../../.. 引用项目根;远端 RELEASE_DIR 为扁平结构,需改回 .
|
||||
sed -i 's|../../..|.|g' "${RELEASE_DIR}/docker-compose.yaml"
|
||||
|
||||
cd "${RELEASE_DIR}"
|
||||
export COMPOSE_PROJECT_NAME
|
||||
|
||||
@@ -7,13 +7,13 @@ services:
|
||||
# 正式环境中,您应当构建一个完整镜像,使用镜像名称或id运行,不要使用dockerfile
|
||||
# image: ulthon/ulthon_admin:v1
|
||||
build:
|
||||
context: . # Dockerfile 所在的目录
|
||||
dockerfile: Dockerfile # Dockerfile 的名称
|
||||
context: ../../.. # 仓库根目录(B-route:从模式目录 cd 进来后指向根)
|
||||
dockerfile: source/stack/author/Dockerfile # Dockerfile 的名称
|
||||
restart: always
|
||||
ports:
|
||||
- "8000:8000" # HTTP
|
||||
volumes:
|
||||
- ./:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
- ../../..:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
# - ./runtime:/var/www/html/runtime
|
||||
# - ./public/storage:/var/www/html/public/storage
|
||||
# - ./public/build:/var/www/html/public/build
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
## 1. 文件作用
|
||||
|
||||
`source/stack/base-build/docker/Dockerfile.base` 是 **ulthon_admin 的基础镜像构建文件**,用于提前固化这些“低频变更但构建耗时高”的基础层:
|
||||
`source/stack/author/docker/Dockerfile.base` 是 **ulthon_admin 的基础镜像构建文件**,用于提前固化这些“低频变更但构建耗时高”的基础层:
|
||||
|
||||
- Debian 源与系统包(如 `nginx`)
|
||||
- PHP 扩展安装能力(`install-php-extensions`)
|
||||
@@ -18,8 +18,8 @@
|
||||
当前模式设计下有三类 Dockerfile:
|
||||
|
||||
- `source/stack/full/Dockerfile`:全量构建(历史兼容方案)
|
||||
- `source/stack/base-build/docker/Dockerfile.base`:基础镜像构建(本文件)
|
||||
- `source/stack/base-build/Dockerfile`:应用镜像构建(`FROM <base-image>`,再拷贝业务代码)
|
||||
- `source/stack/author/docker/Dockerfile.base`:基础镜像构建(本文件)
|
||||
- `source/stack/author/Dockerfile`:应用镜像构建(`FROM <base-image>`,再拷贝业务代码)
|
||||
|
||||
推荐流程是:
|
||||
|
||||
@@ -43,8 +43,8 @@ docker login
|
||||
在项目根目录执行:
|
||||
|
||||
```bash
|
||||
docker build -f source/stack/base-build/docker/Dockerfile.base -t ulthon/ulthon_admin-base:latest .
|
||||
docker build -f source/stack/base-build/docker/Dockerfile.base -t ulthon/ulthon_admin-base:20260424233000 .
|
||||
docker build -f source/stack/author/docker/Dockerfile.base -t ulthon/ulthon_admin-base:latest .
|
||||
docker build -f source/stack/author/docker/Dockerfile.base -t ulthon/ulthon_admin-base:20260424233000 .
|
||||
```
|
||||
|
||||
### 3.3 推送基础镜像
|
||||
@@ -90,7 +90,7 @@ docker build --build-arg BASE_IMAGE=ulthon/ulthon_admin-base:20260424233000 -t u
|
||||
- 标签建议同时维护:
|
||||
- `latest`:默认引用
|
||||
- 时间戳:可追溯、可回滚
|
||||
- 若默认模式为 `base-build`,请保持:
|
||||
- 若默认模式为 `author`,请保持:
|
||||
- 根目录 `Dockerfile`
|
||||
- `source/stack/default/Dockerfile`
|
||||
二者内容一致(符合 `source/stack` 目录规范)。
|
||||
@@ -138,8 +138,8 @@ jobs:
|
||||
fi
|
||||
|
||||
# B-route: docker-serve compose 原始路径基于 source/stack/docker-serve/,
|
||||
# 使用 ../.. 引用项目根;远端 RELEASE_DIR 为扁平结构,需改回 .
|
||||
sed -i 's|../..|.|g' "${RELEASE_DIR}/docker-compose.yaml"
|
||||
# 使用 ../../.. 引用项目根;远端 RELEASE_DIR 为扁平结构,需改回 .
|
||||
sed -i 's|../../..|.|g' "${RELEASE_DIR}/docker-compose.yaml"
|
||||
|
||||
cd "${RELEASE_DIR}"
|
||||
export COMPOSE_PROJECT_NAME
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
services:
|
||||
ulthon_admin:
|
||||
build:
|
||||
context: ../..
|
||||
context: ../../..
|
||||
dockerfile: source/stack/docker-dev/Dockerfile
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8000:8000"
|
||||
volumes:
|
||||
- ../..:/var/www/html
|
||||
- ../../..:/var/www/html
|
||||
extra_hosts:
|
||||
- "host.docker.internal:host-gateway"
|
||||
depends_on:
|
||||
@@ -27,7 +27,7 @@ services:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: ulthon
|
||||
volumes:
|
||||
- ../../docker-dev-data/mysql:/var/lib/mysql
|
||||
- ../../../docker-dev-data/mysql:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
|
||||
interval: 10s
|
||||
@@ -40,7 +40,7 @@ services:
|
||||
ports:
|
||||
- "16379:6379"
|
||||
volumes:
|
||||
- ../../docker-dev-data/redis:/data
|
||||
- ../../../docker-dev-data/redis:/data
|
||||
|
||||
phpmyadmin:
|
||||
image: phpmyadmin:latest
|
||||
|
||||
@@ -7,13 +7,13 @@ services:
|
||||
# 正式环境中,您应当构建一个完整镜像,使用镜像名称或id运行,不要使用dockerfile
|
||||
# image: ulthon/ulthon_admin:v1
|
||||
build:
|
||||
context: ../.. # 仓库根目录(B-route:从模式目录 cd 进来后指向根)
|
||||
context: ../../.. # 仓库根目录(B-route:从模式目录 cd 进来后指向根)
|
||||
dockerfile: source/stack/docker-serve/Dockerfile # Dockerfile 的名称
|
||||
restart: always
|
||||
ports:
|
||||
- "8000:8000" # HTTP
|
||||
volumes:
|
||||
- ../..:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
- ../../..:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
# - ./runtime:/var/www/html/runtime
|
||||
# - ./public/storage:/var/www/html/public/storage
|
||||
# - ./public/build:/var/www/html/public/build
|
||||
|
||||
@@ -7,13 +7,13 @@ services:
|
||||
# 正式环境中,您应当构建一个完整镜像,使用镜像名称或id运行,不要使用dockerfile
|
||||
# image: ulthon/ulthon_admin:v1
|
||||
build:
|
||||
context: ../.. # 仓库根目录(B-route:从模式目录 cd 进来后指向根)
|
||||
context: ../../.. # 仓库根目录(B-route:从模式目录 cd 进来后指向根)
|
||||
dockerfile: source/stack/full/Dockerfile # Dockerfile 的名称
|
||||
restart: always
|
||||
ports:
|
||||
- "8000:8000" # HTTP
|
||||
volumes:
|
||||
- ../..:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
- ../../..:/var/www/html # 直接分发代码可以去掉注释并将下面的目录增加注释
|
||||
# - ./runtime:/var/www/html/runtime
|
||||
# - ./public/storage:/var/www/html/public/storage
|
||||
# - ./public/build:/var/www/html/public/build
|
||||
|
||||
Reference in New Issue
Block a user