58 lines
1.6 KiB
Markdown
58 lines
1.6 KiB
Markdown
# Docker 测试环境镜像说明
|
|
|
|
## 用途与边界
|
|
|
|
本目录用于定义一个可重复构建的隔离测试环境镜像,供后续用该镜像启动一次性容器、挂载当前仓库做隔离测试。
|
|
|
|
- 该镜像只提供测试运行环境,不包含仓库代码。
|
|
- 该镜像不包含任何密钥、私钥或凭据。
|
|
- 本仓正式交付流程仍以非容器化路径为准,此镜像仅用于辅助隔离测试。
|
|
|
|
## 构建与自检
|
|
|
|
在仓库根目录执行:
|
|
|
|
```bash
|
|
make image-build
|
|
make image-verify
|
|
```
|
|
|
|
- `make image-build`:构建镜像 `agent-system-test-env:dev`。
|
|
- `make image-verify`:运行镜像内环境自检脚本 `/usr/local/bin/verify-env.sh`。
|
|
|
|
## 启动测试容器示例
|
|
|
|
```bash
|
|
docker run -d --name asdev-test --shm-size=1g -p 127.0.0.1:2222:22 -v ~/.ssh/id_ed25519.pub:/home/dev/.ssh/authorized_keys:ro -v $PWD:/workspace agent-system-test-env:dev
|
|
```
|
|
|
|
说明:
|
|
|
|
- `authorized_keys` 挂载源可以替换为任意可用的 `.pub` 公钥文件。
|
|
- 容器内 SSH 登录用户为 `dev`。
|
|
- `dev` 用户已配置 sudo 免密。
|
|
|
|
进入容器:
|
|
|
|
```bash
|
|
ssh -p 2222 dev@127.0.0.1
|
|
```
|
|
|
|
## 容器内最小测试流程
|
|
|
|
```bash
|
|
cd /workspace
|
|
make sync
|
|
cd modules/frontend
|
|
npm ci
|
|
npx playwright test
|
|
```
|
|
|
|
说明:镜像已内置 `PLAYWRIGHT_BROWSERS_PATH=/opt/ms-playwright` 下的 Chromium,通常无需在容器内再次执行 `playwright install`。
|
|
|
|
## 安全说明
|
|
|
|
- 容器内无密码登录,仅允许公钥认证。
|
|
- 每个容器实例在启动时独立生成 SSH host key。
|
|
- 不要将生产凭据、私钥或其他敏感文件带进容器。
|