78 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
| networks:
 | |
|   backend:
 | |
| 
 | |
| services:
 | |
|   postgres:
 | |
|     image: postgres:latest
 | |
|     restart: unless-stopped
 | |
|     volumes:
 | |
|       - ${VOLUME_PATH}/var/lib/postgresql/data:/var/lib/postgresql/data:rw
 | |
|     networks:
 | |
|       - backend
 | |
|     environment:
 | |
|       POSTGRES_DB: synapse
 | |
|       POSTGRES_USER: synapse_user
 | |
|       POSTGRES_PASSWORD: postgres
 | |
|       POSTGRES_INITDB_ARGS: --encoding=UTF8 --locale=C
 | |
| 
 | |
|   redis:
 | |
|     image: redis:latest
 | |
|     restart: unless-stopped
 | |
|     networks:
 | |
|       - backend
 | |
| 
 | |
|   synapse:
 | |
|     image: matrixdotorg/synapse:latest
 | |
|     container_name: synapse
 | |
|     restart: unless-stopped
 | |
|     volumes:
 | |
|       - ${VOLUME_PATH}/data:/data:rw
 | |
|     ports:
 | |
|       - 8008:8008
 | |
|     networks:
 | |
|       - backend
 | |
|     environment:
 | |
|       SYNAPSE_CONFIG_DIR: /data
 | |
|       SYNAPSE_CONFIG_PATH: /data/homeserver.yaml
 | |
|     depends_on:
 | |
|       - postgres
 | |
| 
 | |
|   synapse-generic-worker-1:
 | |
|     image: matrixdotorg/synapse:latest
 | |
|     container_name: synapse-generic-worker-1
 | |
|     restart: unless-stopped
 | |
|     entrypoint: ["/start.py", "run", "--config-path=/data/homeserver.yaml", "--config-path=/data/workers/synapse-generic-worker-1.yaml"]
 | |
|     healthcheck:
 | |
|       test: ["CMD-SHELL", "curl -fSs http://localhost:8081/health || exit 1"]
 | |
|       start_period: "5s"
 | |
|       interval: "15s"
 | |
|       timeout: "5s"
 | |
|     networks:
 | |
|       - backend
 | |
|     volumes:
 | |
|       - ${VOLUME_PATH}/data:/data:rw # Replace VOLUME_PATH with the path to your Synapse volume
 | |
|     environment:
 | |
|       SYNAPSE_WORKER: synapse.app.generic_worker
 | |
|     # Expose port if required so your reverse proxy can send requests to this worker
 | |
|     # Port configuration will depend on how the http listener is defined in the worker configuration file
 | |
|     ports:
 | |
|       - 8081:8081
 | |
|     depends_on:
 | |
|       - synapse
 | |
| 
 | |
|   synapse-federation-sender-1:
 | |
|     image: matrixdotorg/synapse:latest
 | |
|     container_name: synapse-federation-sender-1
 | |
|     restart: unless-stopped
 | |
|     entrypoint: ["/start.py", "run", "--config-path=/data/homeserver.yaml", "--config-path=/data/workers/synapse-federation-sender-1.yaml"]
 | |
|     healthcheck:
 | |
|       disable: true
 | |
|     networks:
 | |
|       - backend
 | |
|     volumes:
 | |
|       - ${VOLUME_PATH}/data:/data:rw # Replace VOLUME_PATH with the path to your Synapse volume
 | |
|     environment:
 | |
|       SYNAPSE_WORKER: synapse.app.federation_sender
 | |
|     depends_on:
 | |
|       - synapse
 |