2026-05-13 11:21:35 +08:00
|
|
|
services:
|
|
|
|
|
app:
|
2026-05-14 14:09:27 +08:00
|
|
|
image: ${APP_IMAGE:-ghcr.io/fawney19/aether:latest}
|
2026-05-13 11:21:35 +08:00
|
|
|
container_name: aether-app
|
2026-09-04 03:45:52 +08:00
|
|
|
user: "${AETHER_CONTAINER_UID:-65532}:${AETHER_CONTAINER_GID:-65532}"
|
|
|
|
|
read_only: true
|
|
|
|
|
cap_drop:
|
|
|
|
|
- ALL
|
|
|
|
|
security_opt:
|
|
|
|
|
- no-new-privileges:true
|
|
|
|
|
tmpfs:
|
|
|
|
|
- /tmp:rw,nosuid,nodev,noexec,mode=1777
|
2026-05-13 11:21:35 +08:00
|
|
|
env_file:
|
2026-05-16 15:22:42 +08:00
|
|
|
- ${AETHER_ENV_FILE:-.env}
|
2026-05-13 11:21:35 +08:00
|
|
|
environment:
|
|
|
|
|
TZ: Asia/Shanghai
|
2026-05-22 15:15:17 +08:00
|
|
|
AETHER_BASE_DIR: /opt/aether
|
2026-05-23 20:14:26 +08:00
|
|
|
AETHER_UPDATE_STRATEGY: docker
|
|
|
|
|
AETHER_DOCKER_UPDATE_COMMAND: ${AETHER_DOCKER_UPDATE_COMMAND:-./update.sh}
|
2026-05-15 03:17:14 +08:00
|
|
|
AETHER_DATABASE_DRIVER: sqlite
|
2026-05-22 15:15:17 +08:00
|
|
|
AETHER_DATABASE_URL: sqlite:///opt/aether/data/aether.db
|
2026-05-15 03:17:14 +08:00
|
|
|
AETHER_RUNTIME_BACKEND: memory
|
|
|
|
|
AETHER_GATEWAY_DEPLOYMENT_TOPOLOGY: single-node
|
|
|
|
|
AETHER_GATEWAY_NODE_ROLE: all
|
2026-05-24 18:47:33 +08:00
|
|
|
AETHER_LOG_DESTINATION: stdout
|
2026-05-13 11:21:35 +08:00
|
|
|
AETHER_LOG_FORMAT: ${AETHER_LOG_FORMAT:-pretty}
|
|
|
|
|
APP_PORT: ${APP_PORT:-8084}
|
|
|
|
|
AETHER_GATEWAY_AUTO_PREPARE_DATABASE: ${AETHER_GATEWAY_AUTO_PREPARE_DATABASE:-true}
|
|
|
|
|
ports:
|
|
|
|
|
- "${APP_PORT:-8084}:${APP_PORT:-8084}"
|
|
|
|
|
volumes:
|
2026-05-24 00:37:03 +08:00
|
|
|
- ./data:/opt/aether/data
|
2026-05-24 18:47:33 +08:00
|
|
|
logging:
|
|
|
|
|
driver: json-file
|
|
|
|
|
options:
|
|
|
|
|
max-size: "100m"
|
|
|
|
|
max-file: "10"
|
2026-05-13 11:21:35 +08:00
|
|
|
restart: unless-stopped
|