- Install @oh-my-pi/pi-coding-agent and move Go binaries to /usr/local/bin - Add omp-data volume and make web port configurable via PORT_WEB - Replace aider self-check with omp in Makefile - Harden entrypoint: avoid exporting API keys to SSH env and overwrite mounted public key into authorized_keys - Add .dockerignore, simplify .env.example, and document omp in README
48 lines
1.4 KiB
YAML
48 lines
1.4 KiB
YAML
services:
|
||
vibe-dev:
|
||
build:
|
||
context: .
|
||
# 根据需要切换 Dockerfile.fedora 或 Dockerfile.ubuntu
|
||
dockerfile: Dockerfile.fedora
|
||
args:
|
||
# 将路径传递给 Dockerfile 阶段
|
||
CONTAINER_WORKSPACE: ${CONTAINER_WORKSPACE_PATH:-/workspace}
|
||
container_name: vibe-coding-env
|
||
hostname: vibe-coding
|
||
env_file: .env
|
||
environment:
|
||
# 让容器内部程序也能感知工作目录
|
||
- WORKSPACE=${CONTAINER_WORKSPACE_PATH:-/workspace}
|
||
- SHELL=/bin/zsh
|
||
- TERM=xterm-256color
|
||
ports:
|
||
- "${SSH_PORT:-2222}:22"
|
||
- "${PORT_WEB:-6300}:3000"
|
||
- "6173-6179:5173-5179"
|
||
volumes:
|
||
- ${HOST_PROJECT_PATH:-.}:${CONTAINER_WORKSPACE_PATH:-/workspace}:cached
|
||
# 1. 使用命名卷持久化整个 .ssh 目录
|
||
- ssh-data:/root/.ssh
|
||
|
||
- ${SSH_PUB_KEY_PATH:-~/.ssh/id_ed25519.pub}:/tmp/host_id_ed25519.pub:ro
|
||
- cargo-cache:/usr/local/cargo/registry
|
||
- bun-cache:/root/.bun/install/cache
|
||
- go-cache:/root/go
|
||
# --- 新增:Zed 远程开发缓存 ---
|
||
- zed-server:/root/.zed_server
|
||
- zed-share:/root/.local/share/zed
|
||
# --- 新增:Oh My Pi 配置/记忆/OAuth 登录态持久化 ---
|
||
- omp-data:/root/.omp
|
||
stdin_open: true
|
||
tty: true
|
||
restart: always
|
||
|
||
volumes:
|
||
ssh-data:
|
||
cargo-cache:
|
||
bun-cache:
|
||
go-cache:
|
||
zed-server:
|
||
zed-share:
|
||
omp-data:
|