Remove comments v3
This commit is contained in:
@@ -1,78 +1,46 @@
|
|||||||
# OpenGist Git Snippet Service Configuration
|
|
||||||
services:
|
services:
|
||||||
# PostgreSQL Database Service
|
|
||||||
opengist_db:
|
opengist_db:
|
||||||
# Basic container configuration
|
|
||||||
container_name: opengist_db
|
container_name: opengist_db
|
||||||
image: docker.io/library/postgres:17.5
|
image: docker.io/library/postgres:17.5
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Database credentials
|
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_USER=${POSTGRES_USER} # Database username
|
- POSTGRES_USER=${POSTGRES_USER}
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD} # Database password
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
- POSTGRES_DB=${POSTGRES_DB} # Database name
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/opengist/db:/var/lib/postgresql/data # Database files
|
- ${APPDATA_PATH}/opengist/db:/var/lib/postgresql/data
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${DB_PORT}:5432 # PostgreSQL port
|
- ${DB_PORT}:5432
|
||||||
|
|
||||||
# Health monitoring
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
|
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
|
||||||
interval: 10s # Check frequency
|
interval: 10s
|
||||||
timeout: 5s # Timeout duration
|
timeout: 5s
|
||||||
retries: 3 # Retry attempts
|
retries: 3
|
||||||
start_period: 10s # Initial delay
|
start_period: 10s
|
||||||
|
|
||||||
# OpenGist Application Service
|
|
||||||
opengist_server:
|
opengist_server:
|
||||||
# Basic container configuration
|
|
||||||
container_name: opengist_server
|
container_name: opengist_server
|
||||||
image: ghcr.io/thomiceli/opengist:1.10.0
|
image: ghcr.io/thomiceli/opengist:1.10.0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Service dependencies
|
|
||||||
depends_on:
|
depends_on:
|
||||||
opengist_db:
|
opengist_db:
|
||||||
condition: service_healthy # Wait for healthy database
|
condition: service_healthy
|
||||||
|
|
||||||
# Runtime configuration
|
|
||||||
environment:
|
environment:
|
||||||
# User and group IDs for file permissions
|
- UID=${UID}
|
||||||
- UID=${UID} # User ID for file permissions
|
- GID=${GID}
|
||||||
- GID=${GID} # Group ID for file permissions
|
- OG_DB_URI=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@opengist_db:5432/${POSTGRES_DB}
|
||||||
|
- OG_EXTERNAL_URL=${OG_EXTERNAL_URL}
|
||||||
# Database connection
|
- OG_SECRET_KEY=${OG_SECRET_KEY}
|
||||||
- OG_DB_URI=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@opengist_db:5432/${POSTGRES_DB} # PostgreSQL connection string
|
- OG_HTTP_GIT_ENABLED=${OG_HTTP_GIT_ENABLED}
|
||||||
|
- OG_SSH_GIT_ENABLED=${OG_SSH_GIT_ENABLED}
|
||||||
# Application settings
|
- OG_GITEA_CLIENT_KEY=${OG_GITEA_CLIENT_KEY}
|
||||||
- OG_EXTERNAL_URL=${OG_EXTERNAL_URL} # Public URL for OpenGist
|
- OG_GITEA_SECRET=${OG_GITEA_SECRET}
|
||||||
- OG_SECRET_KEY=${OG_SECRET_KEY} # Encryption key for sessions
|
- OG_GITEA_URL=${OG_GITEA_URL}
|
||||||
|
- OG_GITEA_NAME=${OG_GITEA_NAME}
|
||||||
# Git protocol configuration
|
- OG_CUSTOM_STATIC_LINK_0_NAME=${OG_CUSTOM_STATIC_LINK_0_NAME}
|
||||||
- OG_HTTP_GIT_ENABLED=${OG_HTTP_GIT_ENABLED} # Enable HTTP Git access
|
- OG_CUSTOM_STATIC_LINK_0_PATH=${OG_CUSTOM_STATIC_LINK_0_PATH}
|
||||||
- OG_SSH_GIT_ENABLED=${OG_SSH_GIT_ENABLED} # Enable SSH Git access
|
|
||||||
|
|
||||||
# Gitea integration
|
|
||||||
- OG_GITEA_CLIENT_KEY=${OG_GITEA_CLIENT_KEY} # OAuth client key
|
|
||||||
- OG_GITEA_SECRET=${OG_GITEA_SECRET} # OAuth secret
|
|
||||||
- OG_GITEA_URL=${OG_GITEA_URL} # Gitea instance URL
|
|
||||||
- OG_GITEA_NAME=${OG_GITEA_NAME} # Gitea application name
|
|
||||||
|
|
||||||
# Customization
|
|
||||||
- OG_CUSTOM_STATIC_LINK_0_NAME=${OG_CUSTOM_STATIC_LINK_0_NAME} # Custom link name
|
|
||||||
- OG_CUSTOM_STATIC_LINK_0_PATH=${OG_CUSTOM_STATIC_LINK_0_PATH} # Custom link path
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/opengist/data:/opengist
|
- ${APPDATA_PATH}/opengist/data:/opengist
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${SERVER_PORT}:6157 # Web interface port
|
- ${SERVER_PORT}:6157
|
||||||
- 2222:2222 # SSH port for Git operations
|
- 2222:2222
|
||||||
|
@@ -1,37 +1,22 @@
|
|||||||
# Palmr File Transfer Service Configuration
|
|
||||||
services:
|
services:
|
||||||
palmr:
|
palmr:
|
||||||
# Basic container configuration
|
|
||||||
container_name: palmr
|
container_name: palmr
|
||||||
image: docker.io/kyantech/palmr:v3.1.3-beta
|
image: docker.io/kyantech/palmr:v3.1.3-beta
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Application settings
|
|
||||||
environment:
|
environment:
|
||||||
# Storage Configuration
|
- ENABLE_S3=true
|
||||||
- ENABLE_S3=true # Set to 'true' to enable S3-compatible storage backend, 'false' for local filesystem
|
- S3_ENDPOINT=${S3_ENDPOINT}
|
||||||
|
- S3_USE_SSL=true
|
||||||
# S3 Configuration
|
- S3_ACCESS_KEY=${S3_ACCESS_KEY}
|
||||||
- S3_ENDPOINT=${S3_ENDPOINT} # S3 endpoint (you have to set this to the s3 endpoint of the s3 server) CHANGE THIS TO YOUR S3 ENDPOINT
|
- S3_SECRET_KEY=${S3_SECRET_KEY}
|
||||||
- S3_USE_SSL=true # Use ssl for the s3 server always true for s3
|
- S3_REGION=us-east-1
|
||||||
- S3_ACCESS_KEY=${S3_ACCESS_KEY} # S3 access key
|
- S3_BUCKET_NAME=${S3_BUCKET_NAME}
|
||||||
- S3_SECRET_KEY=${S3_SECRET_KEY} # S3 secret key
|
- S3_FORCE_PATH_STYLE=true
|
||||||
- S3_REGION=us-east-1 # S3 region (us-east-1 is the default region) but it depends on your s3 server region
|
- ENCRYPTION_KEY=${ENCRYPTION_KEY}
|
||||||
- S3_BUCKET_NAME=${S3_BUCKET_NAME} # Bucket name for the S3 storage
|
- SECURE_SITE=${SECURE_SITE}
|
||||||
- S3_FORCE_PATH_STYLE=true # For MinIO compatibility we have to set this to true
|
- PALMR_UID=${PUID}
|
||||||
|
- PALMR_GID=${PGID}
|
||||||
# Security Settings
|
|
||||||
- ENCRYPTION_KEY=${ENCRYPTION_KEY} # Data encryption key for security
|
|
||||||
- SECURE_SITE=${SECURE_SITE} # Set to 'true' to enable HTTPS and security headers
|
|
||||||
|
|
||||||
# User/Group Permissions
|
|
||||||
- PALMR_UID=${PUID} # User ID under which the application runs
|
|
||||||
- PALMR_GID=${PGID} # Group ID under which the application runs
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/palmr/server:/app/server # Database directory
|
- ${APPDATA_PATH}/palmr/server:/app/server
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:5487 # Web interface port
|
- ${PORT}:5487
|
||||||
|
@@ -1,28 +1,15 @@
|
|||||||
# Palmr File Transfer Service Configuration
|
|
||||||
services:
|
services:
|
||||||
palmr:
|
palmr:
|
||||||
# Basic container configuration
|
|
||||||
container_name: palmr
|
container_name: palmr
|
||||||
image: docker.io/kyantech/palmr:v3.1.3-beta
|
image: docker.io/kyantech/palmr:v3.1.3-beta
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Application settings
|
|
||||||
environment:
|
environment:
|
||||||
# Storage Configuration
|
|
||||||
- ENABLE_S3=false
|
- ENABLE_S3=false
|
||||||
|
- ENCRYPTION_KEY=${ENCRYPTION_KEY}
|
||||||
# Security Settings
|
- SECURE_SITE=${SECURE_SITE}
|
||||||
- ENCRYPTION_KEY=${ENCRYPTION_KEY} # Data encryption key for security
|
- PALMR_UID=${PUID}
|
||||||
- SECURE_SITE=${SECURE_SITE} # Enable/Disable HTTPS security features
|
- PALMR_GID=${PGID}
|
||||||
|
|
||||||
# User/Group Permissions
|
|
||||||
- PALMR_UID=${PUID} # User ID for proper file permissions
|
|
||||||
- PALMR_GID=${PGID} # Group ID for proper file permissions
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/palmr/server:/app/server # Database and File storage directory
|
- ${APPDATA_PATH}/palmr/server:/app/server
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:5487 # Web interface port
|
- ${PORT}:5487
|
||||||
|
@@ -1,16 +1,10 @@
|
|||||||
# Portainer Agent Configuration
|
|
||||||
services:
|
services:
|
||||||
portainer-agent:
|
portainer-agent:
|
||||||
# Basic container configuration
|
|
||||||
container_name: portainer-agent
|
container_name: portainer-agent
|
||||||
image: docker.io/portainer/agent:alpine
|
image: docker.io/portainer/agent:alpine
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# System access configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker API access
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
- /var/lib/docker/volumes:/var/lib/docker/volumes # Volume management
|
- /var/lib/docker/volumes:/var/lib/docker/volumes
|
||||||
|
|
||||||
# Network port configuration
|
|
||||||
ports:
|
ports:
|
||||||
- 9001:9001 # Agent communication port
|
- 9001:9001
|
||||||
|
@@ -1,26 +1,18 @@
|
|||||||
# Portainer Container Management Configuration
|
|
||||||
services:
|
services:
|
||||||
portainer:
|
portainer:
|
||||||
# Basic container configuration
|
|
||||||
container_name: portainer
|
container_name: portainer
|
||||||
image: docker.io/portainer/portainer-ee:alpine
|
image: docker.io/portainer/portainer-ee:alpine
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Persistent storage and system access configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./data:/data # Portainer configuration and database
|
- ./data:/data
|
||||||
- /etc/localtime:/etc/localtime:ro # Sync host timezone
|
- /etc/localtime:/etc/localtime:ro
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker API access
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
# Network ports configuration
|
|
||||||
ports:
|
ports:
|
||||||
- 8000:8000 # Edge agent communication port
|
- 8000:8000
|
||||||
- 9443:9443 # Web UI HTTPS port
|
- 9443:9443
|
||||||
|
|
||||||
# Health check configuration
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: "wget --no-verbose --tries=1 --spider http://localhost:9000/api/system/status || exit 1"
|
test: "wget --no-verbose --tries=1 --spider http://localhost:9000/api/system/status || exit 1"
|
||||||
start_period: 10s # Initial delay before checks
|
start_period: 10s
|
||||||
interval: 10s # Check interval
|
interval: 10s
|
||||||
timeout: 5s # Check timeout
|
timeout: 5s
|
||||||
retries: 3 # Allowed retries
|
retries: 3
|
||||||
|
@@ -1,46 +1,30 @@
|
|||||||
# Radicale CalDAV/CardDAV Server Configuration
|
|
||||||
services:
|
services:
|
||||||
radicale:
|
radicale:
|
||||||
# Basic container configuration
|
|
||||||
container_name: radicale
|
container_name: radicale
|
||||||
image: docker.io/tomsquest/docker-radicale:3.5.4.0
|
image: docker.io/tomsquest/docker-radicale:3.5.4.0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
init: true
|
||||||
# Security hardening
|
read_only: true
|
||||||
init: true # Use init process for proper signal handling
|
|
||||||
read_only: true # Read-only filesystem for security
|
|
||||||
|
|
||||||
# Minimal required capabilities
|
|
||||||
cap_add:
|
cap_add:
|
||||||
- CHOWN # Required for file ownership changes
|
- CHOWN
|
||||||
- KILL # Required for process management
|
- KILL
|
||||||
- SETGID # Required for group permissions
|
- SETGID
|
||||||
- SETUID # Required for user permissions
|
- SETUID
|
||||||
|
|
||||||
# Security restrictions
|
|
||||||
cap_drop:
|
cap_drop:
|
||||||
- ALL # Drop all capabilities by default
|
- ALL
|
||||||
security_opt:
|
security_opt:
|
||||||
- no-new-privileges:true # Prevent privilege escalation
|
- no-new-privileges:true
|
||||||
|
|
||||||
# Resource limits
|
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
memory: 256M # Memory limit
|
memory: 256M
|
||||||
pids: 50 # Maximum number of processes
|
pids: 50
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/radicale/data:/data # Calendar and contact data
|
- ${APPDATA_PATH}/radicale/data:/data
|
||||||
- ${APPDATA_PATH}/radicale/config:/config:ro # Read-only configuration
|
- ${APPDATA_PATH}/radicale/config:/config:ro
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:5232 # DAV service port
|
- ${PORT}:5232
|
||||||
|
|
||||||
# Health monitoring
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: curl -f http://127.0.0.1:5232 || exit 1 # Simple HTTP check
|
test: curl -f http://127.0.0.1:5232 || exit 1
|
||||||
interval: 30s # Check every 30 seconds
|
interval: 30s
|
||||||
retries: 3 # Allow 3 failures before marking unhealthy
|
retries: 3
|
||||||
|
@@ -1,34 +1,24 @@
|
|||||||
# Stirling PDF Service Configuration
|
|
||||||
services:
|
services:
|
||||||
stirling-pdf:
|
stirling-pdf:
|
||||||
# Basic container configuration
|
|
||||||
container_name: stirling-pdf
|
container_name: stirling-pdf
|
||||||
image: ghcr.io/stirling-tools/stirling-pdf:1.0.2-fat # Full-featured image
|
image: ghcr.io/stirling-tools/stirling-pdf:1.0.2-fat
|
||||||
restart: unless-stopped # Auto-recover from crashes
|
restart: unless-stopped
|
||||||
|
|
||||||
# Application settings
|
|
||||||
environment:
|
environment:
|
||||||
- DISABLE_ADDITIONAL_FEATURES=${DISABLE_ADDITIONAL_FEATURES} # Toggle extra features
|
- DISABLE_ADDITIONAL_FEATURES=${DISABLE_ADDITIONAL_FEATURES}
|
||||||
- DOCKER_ENABLE_SECURITY=${DOCKER_ENABLE_SECURITY} # Enable security restrictions
|
- DOCKER_ENABLE_SECURITY=${DOCKER_ENABLE_SECURITY}
|
||||||
- SECURITY_ENABLELOGIN=${SECURITY_ENABLELOGIN} # Require authentication
|
- SECURITY_ENABLELOGIN=${SECURITY_ENABLELOGIN}
|
||||||
- LANGS=${LANGS} # Supported languages for OCR
|
- LANGS=${LANGS}
|
||||||
- SHOW_SURVEY=false # Disable user surveys
|
- SHOW_SURVEY=false
|
||||||
- DISABLE_PIXEL=true # Disable pixel tracking
|
- DISABLE_PIXEL=true
|
||||||
- SYSTEM_ENABLEANALYTICS=false # Disable analytics
|
- SYSTEM_ENABLEANALYTICS=false
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_DATA}/stirling-pdf/training_data:/usr/share/tessdata # OCR training data
|
- ${APPDATA_DATA}/stirling-pdf/training_data:/usr/share/tessdata
|
||||||
- ${APPDATA_DATA}/stirling-pdf/config:/configs # Configuration files
|
- ${APPDATA_DATA}/stirling-pdf/config:/configs
|
||||||
- ${APPDATA_DATA}/stirling-pdf/custom_files:/customFiles/ # User uploads
|
- ${APPDATA_DATA}/stirling-pdf/custom_files:/customFiles/
|
||||||
- ${APPDATA_DATA}/stirling-pdf/logs:/logs/ # Application logs
|
- ${APPDATA_DATA}/stirling-pdf/logs:/logs/
|
||||||
- ${APPDATA_DATA}/stirling-pdf/pipeline:/pipeline/ # Processing pipelines
|
- ${APPDATA_DATA}/stirling-pdf/pipeline:/pipeline/
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:8080 # Web interface port
|
- ${PORT}:8080
|
||||||
|
|
||||||
# Health check configuration
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: [ "CMD-SHELL", "curl -f http://localhost:8080/api/v1/info/status | grep -q 'UP'" ]
|
test: [ "CMD-SHELL", "curl -f http://localhost:8080/api/v1/info/status | grep -q 'UP'" ]
|
||||||
interval: 5s
|
interval: 5s
|
||||||
|
@@ -1,25 +1,15 @@
|
|||||||
# SyncYomi Configuration - Manga/Comic Reader Sync Service
|
|
||||||
services:
|
services:
|
||||||
syncyomi:
|
syncyomi:
|
||||||
# Basic container configuration
|
|
||||||
container_name: syncyomi
|
container_name: syncyomi
|
||||||
image: ghcr.io/syncyomi/syncyomi:v1.1.4
|
image: ghcr.io/syncyomi/syncyomi:v1.1.4
|
||||||
restart: unless-stopped # Auto-restart on failure
|
restart: unless-stopped
|
||||||
|
|
||||||
# Application settings
|
|
||||||
environment:
|
environment:
|
||||||
- TZ=${TZ} # Timezone for proper timestamp handling
|
- TZ=${TZ}
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/syncyomi/config:/config # Configuration files
|
- ${APPDATA_PATH}/syncyomi/config:/config
|
||||||
- ${APPDATA_PATH}/syncyomi/log:/log # Application logs
|
- ${APPDATA_PATH}/syncyomi/log:/log
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:8282 # Web interface port
|
- ${PORT}:8282
|
||||||
|
|
||||||
# Health check configuration
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "curl", "-f", "http://localhost:8282"]
|
test: ["CMD", "curl", "-f", "http://localhost:8282"]
|
||||||
interval: 10s
|
interval: 10s
|
||||||
|
@@ -1,15 +1,9 @@
|
|||||||
# Uptime Kuma Configuration - Status Monitoring Service
|
|
||||||
services:
|
services:
|
||||||
uptime-kuma:
|
uptime-kuma:
|
||||||
# Basic container configuration
|
|
||||||
container_name: uptime-kuma
|
container_name: uptime-kuma
|
||||||
image: docker.io/louislam/uptime-kuma:1.23.16
|
image: docker.io/louislam/uptime-kuma:1.23.16
|
||||||
restart: unless-stopped # Auto-recover from crashes
|
restart: unless-stopped
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/uptime-kuma/config:/app/data # Monitoring configuration and data
|
- ${APPDATA_PATH}/uptime-kuma/config:/app/data
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:3001 # Web dashboard port
|
- ${PORT}:3001
|
||||||
|
Reference in New Issue
Block a user