Files
mavis-agent e04ea2d1de opencode 容器内置 SSH:镜像内置 sshd 并开机自启
- Dockerfile: openssh-client 换成 openssh-server
- 新增 sshd-hardening.conf: 仅公钥认证,禁密码/转发
- 新增 authorized_keys: 授权公钥
- 构建期生成 host key,保证镜像内指纹稳定
- entrypoint.sh: exec opencode 前拉起 sshd,幂等且失败不阻断主服务
- compose: 发布 3333:22
2026-10-02 19:27:20 +08:00

86 lines
1.8 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
services:
opencode:
build:
context: .
dockerfile: Dockerfile
args:
BUILDKIT_INLINE_CACHE: 1
image: opencode-dev:latest
container_name: opencode-dev
restart: unless-stopped
privileged: true
stdin_open: true
tty: true
networks:
- 1panel-network
working_dir: /workspace
ports:
- "3004:3004"
- "3005:3005"
# SSH(宿主机 3333 -> 容器 22)
- "3333:22"
volumes:
# 项目
- /home/wol/docker-data/jupyter/data/opencode:/workspace
# Maven
- /home/wol/docker-data/opencode/cache/m2:/root/.m2
# Gradle
- /home/wol/docker-data/opencode/cache/gradle:/root/.gradle
# Python
- /home/wol/docker-data/opencode/cache/pip:/root/.cache/pip
# Android SDK
- /home/wol/docker-data/opencode/cache/sdk:/opt/android-sdk
# Docker
- /var/run/docker.sock:/var/run/docker.sock
# opencode
- /home/wol/docker-data/opencode/config:/root/.config/opencode
- /home/wol/docker-data/opencode/data:/root/.local/share/opencode
# omo
- /home/wol/docker-data/opencode/omo:/root/.omo
environment:
TZ: Asia/Shanghai
LANG: C.UTF-8
LC_ALL: C.UTF-8
WORKSPACE: /workspace
ANDROID_HOME: /opt/android-sdk
ANDROID_SDK_ROOT: /opt/android-sdk
PYTHONUNBUFFERED: "1"
http_proxy: http://192.168.1.12:7897
https_proxy: http://192.168.1.12:7897
all_proxy: socks5://192.168.1.12:7897
no_proxy: localhost,127.0.0.1,192.168.1.12
# GitNexus embedding
GITNEXUS_EMBEDDING_URL: ${GITNEXUS_EMBEDDING_URL}
GITNEXUS_EMBEDDING_MODEL: ${GITNEXUS_EMBEDDING_MODEL}
GITNEXUS_EMBEDDING_DIMS: ${GITNEXUS_EMBEDDING_DIMS}
GITNEXUS_EMBEDDING_API_KEY: ${GITNEXUS_EMBEDDING_API_KEY}
networks:
1panel-network:
external: true