| 
									
										
										
										
											2018-08-11 14:21:14 +00:00
										 |  |  | version: "3"
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | services:
 | 
					
						
							|  |  |  |   front:
 | 
					
						
							| 
									
										
										
										
											2018-01-08 21:47:14 +00:00
										 |  |  |     build: front
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  |     environment:
 | 
					
						
							|  |  |  |       - "HOST=0.0.0.0"
 | 
					
						
							| 
									
										
										
										
											2018-09-22 12:29:30 +00:00
										 |  |  |       - "VUE_PORT=${VUE_PORT-8080}"
 | 
					
						
							| 
									
										
										
										
											2018-09-09 14:59:28 +00:00
										 |  |  |     ports:
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  |       - "${VUE_PORT-8080}"
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  |     volumes:
 | 
					
						
							| 
									
										
										
										
											2018-08-11 14:21:14 +00:00
										 |  |  |       - "./front:/app"
 | 
					
						
							|  |  |  |       - "/app/node_modules"
 | 
					
						
							|  |  |  |       - "./po:/po"
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     networks:
 | 
					
						
							|  |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   postgres:
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2019-01-11 09:45:38 +00:00
										 |  |  |     image: postgres:${POSTGRES_VERSION-11}
 | 
					
						
							| 
									
										
										
										
											2018-09-23 12:38:42 +00:00
										 |  |  |     command: postgres -c log_min_duration_statement=0
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     volumes:
 | 
					
						
							|  |  |  |       - "./data/${COMPOSE_PROJECT_NAME-node1}/postgres:/var/lib/postgresql/data"
 | 
					
						
							|  |  |  |     networks:
 | 
					
						
							|  |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   redis:
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  |     image: redis:3.0
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     volumes:
 | 
					
						
							|  |  |  |       - "./data/${COMPOSE_PROJECT_NAME-node1}/redis:/data"
 | 
					
						
							|  |  |  |     networks:
 | 
					
						
							|  |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |   api:
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |     build: &backend
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  |       context: ./api
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |       dockerfile: Dockerfile
 | 
					
						
							|  |  |  |       args:
 | 
					
						
							|  |  |  |         install_dev_deps: 1
 | 
					
						
							|  |  |  |     entrypoint: compose/django/dev-entrypoint.sh
 | 
					
						
							|  |  |  |     command: python /app/manage.py runserver 0.0.0.0:${FUNKWHALE_API_PORT-5000}
 | 
					
						
							|  |  |  |     volumes:
 | 
					
						
							|  |  |  |       - ./api:/app
 | 
					
						
							| 
									
										
										
										
											2019-03-20 18:38:41 +00:00
										 |  |  |       - "${MUSIC_DIRECTORY_SERVE_PATH-./data/music}:/music:ro"
 | 
					
						
							| 
									
										
										
										
											2017-06-23 21:00:42 +00:00
										 |  |  |     environment:
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |       - "FUNKWHALE_HOSTNAME=${FUNKWHALE_HOSTNAME-localhost}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_HOSTNAME_SUFFIX=funkwhale.test"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_HOSTNAME_PREFIX=${COMPOSE_PROJECT_NAME}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_PROTOCOL=${FUNKWHALE_PROTOCOL-http}"
 | 
					
						
							| 
									
										
										
										
											2017-12-13 22:36:10 +00:00
										 |  |  |       - "DATABASE_URL=postgresql://postgres@postgres/postgres"
 | 
					
						
							|  |  |  |       - "CACHE_URL=redis://redis:6379/0"
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |     links:
 | 
					
						
							|  |  |  |       - postgres
 | 
					
						
							|  |  |  |       - redis
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     networks:
 | 
					
						
							|  |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |     cap_add:
 | 
					
						
							|  |  |  |       - SYS_PTRACE
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   celeryworker:
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |     build: *backend
 | 
					
						
							|  |  |  |     links:
 | 
					
						
							|  |  |  |       - postgres
 | 
					
						
							|  |  |  |       - redis
 | 
					
						
							|  |  |  |     command: celery -A funkwhale_api.taskapp worker -l debug -B
 | 
					
						
							| 
									
										
										
										
											2017-07-17 20:00:32 +00:00
										 |  |  |     environment:
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |       - "FUNKWHALE_HOSTNAME=${FUNKWHALE_HOSTNAME-localhost}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_HOSTNAME_SUFFIX=funkwhale.test"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_HOSTNAME_PREFIX=${COMPOSE_PROJECT_NAME}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_PROTOCOL=${FUNKWHALE_PROTOCOL-http}"
 | 
					
						
							| 
									
										
										
										
											2017-07-17 20:00:32 +00:00
										 |  |  |       - "DATABASE_URL=postgresql://postgres@postgres/postgres"
 | 
					
						
							|  |  |  |       - "CACHE_URL=redis://redis:6379/0"
 | 
					
						
							| 
									
										
										
										
											2019-01-21 12:54:46 +00:00
										 |  |  |     volumes:
 | 
					
						
							|  |  |  |       - ./api:/app
 | 
					
						
							| 
									
										
										
										
											2019-03-20 18:38:41 +00:00
										 |  |  |       - "${MUSIC_DIRECTORY_SERVE_PATH-./data/music}:/music:ro"
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     networks:
 | 
					
						
							|  |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2017-06-28 21:30:26 +00:00
										 |  |  |   nginx:
 | 
					
						
							| 
									
										
										
										
											2018-03-29 18:30:24 +00:00
										 |  |  |     command: /entrypoint.sh
 | 
					
						
							| 
									
										
										
										
											2018-03-29 17:55:24 +00:00
										 |  |  |     env_file:
 | 
					
						
							|  |  |  |       - .env.dev
 | 
					
						
							|  |  |  |       - .env
 | 
					
						
							| 
									
										
										
										
											2017-06-28 21:30:26 +00:00
										 |  |  |     image: nginx
 | 
					
						
							| 
									
										
										
										
											2018-03-29 18:30:24 +00:00
										 |  |  |     environment:
 | 
					
						
							| 
									
										
										
										
											2019-01-11 08:51:23 +00:00
										 |  |  |       - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-100M}"
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  |       - "FUNKWHALE_API_IP=${FUNKHALE_API_IP-api}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_API_PORT=${FUNKWHALE_API_PORT-5000}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_FRONT_IP=${FUNKHALE_FRONT_IP-front}"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_FRONT_PORT=${VUE_PORT-8080}"
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |       - "COMPOSE_PROJECT_NAME=${COMPOSE_PROJECT_NAME- }"
 | 
					
						
							|  |  |  |       - "FUNKWHALE_HOSTNAME=${FUNKWHALE_HOSTNAME-localhost}"
 | 
					
						
							| 
									
										
										
										
											2018-12-20 16:36:32 +00:00
										 |  |  |     depends_on:
 | 
					
						
							| 
									
										
										
										
											2017-06-28 21:30:26 +00:00
										 |  |  |       - api
 | 
					
						
							|  |  |  |       - front
 | 
					
						
							|  |  |  |     volumes:
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  |       - ./docker/nginx/conf.dev:/etc/nginx/nginx.conf.template:ro
 | 
					
						
							| 
									
										
										
										
											2018-03-29 18:30:24 +00:00
										 |  |  |       - ./docker/nginx/entrypoint.sh:/entrypoint.sh:ro
 | 
					
						
							| 
									
										
										
										
											2019-03-20 18:38:41 +00:00
										 |  |  |       - "${MUSIC_DIRECTORY_SERVE_PATH-./data/music}:/music:ro"
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  |       - ./deploy/funkwhale_proxy.conf:/etc/nginx/funkwhale_proxy.conf:ro
 | 
					
						
							|  |  |  |       - "${MEDIA_ROOT-./api/funkwhale_api/media}:/protected/media:ro"
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |     networks:
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  |       - federation
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |       - internal
 | 
					
						
							| 
									
										
										
										
											2018-12-19 13:03:21 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     labels:
 | 
					
						
							|  |  |  |       traefik.backend: "${COMPOSE_PROJECT_NAME-node1}"
 | 
					
						
							|  |  |  |       traefik.frontend.rule: "Host:${COMPOSE_PROJECT_NAME-node1}.funkwhale.test,${NODE_IP-127.0.0.1}"
 | 
					
						
							|  |  |  |       traefik.enable: "true"
 | 
					
						
							|  |  |  |       traefik.federation.protocol: "http"
 | 
					
						
							|  |  |  |       traefik.federation.port: "80"
 | 
					
						
							|  |  |  |       traefik.frontend.passHostHeader: true
 | 
					
						
							|  |  |  |       traefik.docker.network: federation
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-12 22:38:39 +00:00
										 |  |  |   docs:
 | 
					
						
							|  |  |  |     build: docs
 | 
					
						
							|  |  |  |     command: python serve.py
 | 
					
						
							|  |  |  |     volumes:
 | 
					
						
							|  |  |  |       - ".:/app/"
 | 
					
						
							|  |  |  |     ports:
 | 
					
						
							| 
									
										
										
										
											2018-08-11 14:21:14 +00:00
										 |  |  |       - "35730:35730"
 | 
					
						
							|  |  |  |       - "8001:8001"
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-26 12:26:11 +00:00
										 |  |  |   api-docs:
 | 
					
						
							|  |  |  |     image: swaggerapi/swagger-ui
 | 
					
						
							|  |  |  |     environment:
 | 
					
						
							|  |  |  |       - "API_URL=/swagger.yml"
 | 
					
						
							|  |  |  |     ports:
 | 
					
						
							| 
									
										
										
										
											2018-08-11 14:21:14 +00:00
										 |  |  |       - "8002:8080"
 | 
					
						
							| 
									
										
										
										
											2018-04-26 12:26:11 +00:00
										 |  |  |     volumes:
 | 
					
						
							| 
									
										
										
										
											2018-05-22 20:57:20 +00:00
										 |  |  |       - "./docs/swagger.yml:/usr/share/nginx/html/swagger.yml"
 | 
					
						
							| 
									
										
										
										
											2018-04-26 12:26:11 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  | networks:
 | 
					
						
							| 
									
										
										
										
											2018-08-11 14:21:14 +00:00
										 |  |  |   ? internal
 | 
					
						
							| 
									
										
										
										
											2018-04-08 16:19:32 +00:00
										 |  |  |   federation:
 | 
					
						
							|  |  |  |     external:
 | 
					
						
							|  |  |  |       name: federation
 |