89 lines
2.9 KiB
YAML
89 lines
2.9 KiB
YAML
services:
|
|
ws-flux-dev:
|
|
build:
|
|
context: ../../
|
|
dockerfile: instances/flux/Dockerfile
|
|
image: ws-flux-dev:latest
|
|
container_name: ws-flux-dev
|
|
hostname: ws-flux-dev
|
|
restart: unless-stopped
|
|
|
|
ports:
|
|
- "2201:22"
|
|
- "7701:7681"
|
|
|
|
volumes:
|
|
# ===== 项目源码 =====
|
|
- E:/wk-flux:/workspace
|
|
|
|
# ===== 开发工具 (JDK/Maven) =====
|
|
- D:/Java/jdk-musl-17:/opt/jdk-musl-17:ro
|
|
- D:/Java/maven-mvnd-3.9.14:/opt/maven-mvnd-3.9.14:ro
|
|
|
|
# ===== 代理工具 (Linux static binaries) =====
|
|
- E:/wk-oth/rust-work/dist-Linux/mysql-proxy:/usr/local/bin/mysql-proxy:ro
|
|
- E:/wk-oth/rust-work/dist-Linux/ssh-proxy:/usr/local/bin/ssh-proxy:ro
|
|
- E:/wk-oth/rust-work/dist-Linux/redis-proxy:/usr/local/bin/redis-proxy:ro
|
|
- E:/wk-oth/rust-work/dist-Linux/mongo-proxy:/usr/local/bin/mongo-proxy:ro
|
|
|
|
# ===== SSH 密钥 + 代理配置 (仅 Flux 相关) =====
|
|
- C:/Users/23780/.ssh/id_ed25519:/root/.ssh/id_ed25519:ro
|
|
- ../../dev-envs/flux/ssh-proxy.toml:/root/.dev-env/ssh-proxy.toml:ro
|
|
- ../../dev-envs/flux/mysql-proxy.toml:/root/.dev-env/mysql-proxy.toml:ro
|
|
- ../../dev-envs/flux/redis-proxy.toml:/root/.dev-env/redis-proxy.toml:ro
|
|
|
|
# ===== 项目级配置 (dev-envs) =====
|
|
- ../../dev-envs/flux/servers.yaml:/root/.dev-env/servers.yaml:ro
|
|
- ../../dev-envs/flux/databases.yaml:/root/.dev-env/databases.yaml:ro
|
|
- ../../dev-envs/flux/norms.md:/root/.dev-env/norms.md:ro
|
|
- ../../dev-envs/flux/docs:/root/.dev-env/docs:ro
|
|
- ../../dev-envs/flux/claude/CLAUDE.md:/root/.dev-env/claude/CLAUDE.md:ro
|
|
- ../../dev-envs/flux/claude/settings.local.json:/root/.dev-env/claude/settings.local.json:ro
|
|
|
|
# ===== 持久化 Home =====
|
|
- ../../data/home/flux-dev:/root
|
|
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
- TERM=xterm-256color
|
|
- ROOT_PASSWORD=${ROOT_PASSWORD:-workpod123}
|
|
- TTYD_CREDENTIALS=${TTYD_CREDENTIALS:-jc:1234567}
|
|
- WORKPOD_PROJECT=flux
|
|
- JAVA_HOME=/opt/jdk-musl-17
|
|
- MAVEN_HOME=/opt/maven-mvnd-3.9.14
|
|
# === Claude Code (智谱 AI) ===
|
|
- ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_AUTH_TOKEN}
|
|
- ANTHROPIC_DEFAULT_SONNET_MODEL=glm-5v-turbo
|
|
- ANTHROPIC_DEFAULT_OPUS_MODEL=glm-5.1
|
|
- ANTHROPIC_DEFAULT_HAIKU_MODEL=glm-4.5-air
|
|
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 4G
|
|
reservations:
|
|
memory: 1G
|
|
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "3"
|
|
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "netstat -tlnp 2>/dev/null | grep -qE ':(22|7681)\\b' || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
start_period: 15s
|
|
retries: 3
|
|
|
|
working_dir: /workspace
|
|
tty: true
|
|
stdin_open: true
|
|
|
|
networks:
|
|
default:
|
|
external: true
|
|
name: workpod-flux-network
|