services: zink-api: image: elshaddai/zink-api:main expose: - 8000 environment: - MONGO_USER=${MONGO_USER} - MONGO_PASS=${MONGO_PASS} - MONGO_DATABASE=${MONGO_DATABASE} - MONGO_URI=${MONGO_URI} - SIGNING_KEY=${SIGNING_KEY} - AUTH_KEY=${AUTH_KEY} - RUNTIME_ENV=${RUNTIME_ENV} - GIN_MODE=${GIN_MODE} zink-web: image: elshaddai/zink-web:main expose: - 3000 environment: - API_URL=http://zink-api:8000 - WALINE_URL=${WALINE_URL} - GOOGLE_ACCOUNT_KEY_FILE_PATH=/etc/secrets/google_account_key.json - GOOGLE_ANALYTICS_PROPERTY=${GOOGLE_ANALYTICS_PROPERTY} - GOOGLE_ANALYTICS_ID=${GOOGLE_ANALYTICS_ID} - GEONAME_USERNAME=${GEONAME_USERNAME} - EMAILOCTOPUS_LIST_ID=${EMAILOCTOPUS_LIST_ID} - EMAILOCTOPUS_API_KEY=${EMAILOCTOPUS_API_KEY} - CLUSTRMAP_ID=${CLUSTRMAP_ID} - SECRET_COOKIE_PASSWORD=${SECRET_COOKIE_PASSWORD} - COOKIE_IDENTITY=${COOKIE_IDENTITY} - CACAE_PATH=/tmp/cache volumes: - ../secrets:/etc/secrets:ro - /tmp/cache:/tmp/cache depends_on: - zink-api - waline waline: image: lizheming/waline:1.32.1-alpine expose: - 8360 environment: - LEAN_ID=${LEAN_ID} - LEAN_KEY=${LEAN_KEY} - LEAN_MASTER_KEY=${LEAN_MASTER_KEY} chatgpt-next-web: image: yidadaa/chatgpt-next-web expose: - 3000 environment: - OPENAI_API_KEY=$OPENAI_API_KEY - CODE=$CODE - OPENAI_ORG_ID=$OPENAI_ORG_ID trojan: image: trojangfw/trojan expose: - 443 volumes: - ../trojan/config.json:/config/config.json - ../certs:/etc/trojan/cert:ro nginx: image: nginx:alpine environment: - NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx - DOMAIN_NAME=${DOMAIN_NAME} - BLOB_DOMAIN_NAME=${BLOB_DOMAIN_NAME} ports: - "80:80" - "443:443" volumes: - ../nginx:/etc/nginx/templates - ../certs:/etc/nginx/certs - /var/www/blobs:/var/www/blobs - /var/www/certbot:/var/www/certbot depends_on: - zink-web - zink-api - waline - chatgpt-next-web - trojan