-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
69 lines (68 loc) · 3.21 KB
/
Copy pathdocker-compose.yml
File metadata and controls
69 lines (68 loc) · 3.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
services:
codex-image-studio:
# Keep the published legacy image as the default until a renamed image is released.
image: ${CODEX_IMAGE_STUDIO_IMAGE:-muwei517/image-gen-service:latest}
container_name: ${IMAGE_GEN_CONTAINER_NAME:-codex-image-studio}
user: "root"
ports:
- "${IMAGE_GEN_PORT:-8088}:8088"
environment:
IMAGE_GEN_HOST: 0.0.0.0
IMAGE_GEN_PORT: 8088
IMAGE_GEN_SERVICE_ROOT: ${APP_HOME:-/opt/codex-image-studio}
IMAGE_GEN_DATA_DIR: ${APP_DATA_DIR:-/data/codex-image-studio}
IMAGE_GEN_DEFAULT_WORKDIR: ${APP_WORKDIR:-/workspace}
IMAGE_GEN_CODEX_BIN: ${CODEX_BIN_PATH:-/usr/local/bin/codex}
IMAGE_GEN_CODEX_HOME: ${CODEX_HOME:-/data/codex-home}
IMAGE_GEN_CODEX_USER_HOME: /home/imagegen
IMAGE_GEN_GENERATED_IMAGES_DIR: ${CODEX_HOME:-/data/codex-home}/generated_images
APP_USER: root
APP_GROUP: root
IMAGE_GEN_FRONTEND_DIST_DIR: ${APP_HOME:-/opt/codex-image-studio}/frontend/dist
IMAGE_GEN_FILE_ROOTS: ${APP_DATA_DIR:-/data/codex-image-studio}:${APP_WORKDIR:-/workspace}:${CODEX_HOME:-/data/codex-home}/generated_images
IMAGE_GEN_JOB_TIMEOUT_SECONDS: ${IMAGE_GEN_JOB_TIMEOUT_SECONDS:-1800}
IMAGE_GEN_MAX_CONCURRENCY: ${IMAGE_GEN_MAX_CONCURRENCY:-9}
IMAGE_GEN_CORS_ORIGIN: ${IMAGE_GEN_CORS_ORIGIN:-*}
IMAGE_GEN_PROXY_URL: ${IMAGE_GEN_PROXY_URL:-}
IMAGE_GEN_NO_PROXY: ${IMAGE_GEN_NO_PROXY:-127.0.0.1,localhost,codex-image-studio,image-gen-service,codex-image-studio-mcp,image-gen-mcp}
volumes:
- ${HOST_DATA_DIR:-./runtime/data}:${APP_DATA_DIR:-/data/codex-image-studio}
- ${HOST_WORKDIR:-./runtime/workspace}:${APP_WORKDIR:-/workspace}
- ${HOST_CODEX_HOME:-./runtime/codex-home}:${CODEX_HOME:-/data/codex-home}
- ${HOST_IMAGES_DIR:-./runtime/codex-home/generated_images}:${CODEX_HOME:-/data/codex-home}/generated_images
healthcheck:
test: ["CMD", "curl", "-fsS", "http://127.0.0.1:8088/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s
restart: unless-stopped
codex-image-studio-mcp:
build:
context: ./mcp
dockerfile: Dockerfile
image: codex-image-studio-mcp:0.3.0
container_name: codex-image-studio-mcp
depends_on:
codex-image-studio:
condition: service_healthy
ports:
- "127.0.0.1:${IMAGE_GEN_MCP_PUBLISH_PORT:-18089}:8090"
environment:
IMAGE_GEN_MCP_BASE_URL: http://codex-image-studio:8088
IMAGE_GEN_MCP_HOST: 0.0.0.0
IMAGE_GEN_MCP_PORT: 8090
IMAGE_GEN_MCP_PATH: /mcp
IMAGE_GEN_MCP_GENERATION_TIMEOUT_SECONDS: ${IMAGE_GEN_MCP_GENERATION_TIMEOUT_SECONDS:-1800}
IMAGE_GEN_MCP_MAX_INLINE_IMAGES: ${IMAGE_GEN_MCP_MAX_INLINE_IMAGES:-8}
IMAGE_GEN_MCP_MEDIA_BASE_URL: ${IMAGE_GEN_MCP_MEDIA_BASE_URL:-}
IMAGE_GEN_MCP_MEDIA_TTL_SECONDS: ${IMAGE_GEN_MCP_MEDIA_TTL_SECONDS:-3600}
IMAGE_GEN_MCP_MEDIA_MAX_ITEMS: ${IMAGE_GEN_MCP_MEDIA_MAX_ITEMS:-100}
IMAGE_GEN_MCP_MEDIA_MAX_TOTAL_BYTES: ${IMAGE_GEN_MCP_MEDIA_MAX_TOTAL_BYTES:-209715200}
IMAGE_GEN_MCP_ENABLE_CANCEL_TOOLS: ${IMAGE_GEN_MCP_ENABLE_CANCEL_TOOLS:-false}
restart: unless-stopped
logging:
driver: json-file
options:
max-size: "20m"
max-file: "3"