addons-server/docker-compose.yml

85 строки
1.9 KiB
YAML

version: "2.3"
x-env-mapping: &env
environment:
- CELERY_BROKER_URL=amqp://olympia:olympia@rabbitmq/olympia
- CELERY_RESULT_BACKEND=redis://redis:6379/1
- DATABASE_URL=mysql://root:@mysqld/olympia
- ELASTICSEARCH_LOCATION=elasticsearch:9200
- MEMCACHE_LOCATION=memcached:11211
- MYSQL_DATABASE=olympia
- MYSQL_ROOT_PASSWORD=docker
- OLYMPIA_SITE_URL=http://olympia.test
- PYTHONDONTWRITEBYTECODE=1
- PYTHONUNBUFFERED=1
- RECURSION_LIMIT=10000
- REDIS_LOCATION=redis://redis:6379/0?socket_timeout=0.5
- TERM=xterm-256color
services:
worker: &worker
<<: *env
image: addons/addons-server
command: supervisord -n -c /code/docker/supervisor-celery.conf
entrypoint: ./scripts/start-docker.sh
volumes:
- .:/code
extra_hosts:
- "olympia.test:127.0.0.1"
web:
<<: *worker
command: supervisord -n -c /code/docker/supervisor.conf
nginx:
image: addons/addons-nginx
volumes:
- ./static:/srv/static
- ./site-static:/srv/site-static
- ./user-media/:/srv/user-media
memcached:
image: memcached:1.4
mysqld:
image: mysql:5.7
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
- MYSQL_DATABASE=olympia
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:5.4.1
environment:
- xpack.security.enabled=false
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
mem_limit: 2g
redis:
image: redis:2.8
rabbitmq:
image: rabbitmq:3.5
hostname: olympia
expose:
- "5672"
environment:
- RABBITMQ_DEFAULT_USER=olympia
- RABBITMQ_DEFAULT_PASS=olympia
- RABBITMQ_DEFAULT_VHOST=olympia
autograph:
image: mozilla/autograph:2.0.5
selenium-firefox:
<<: *env
image: b4handjr/selenium-firefox
volumes:
- .:/code
expose:
- "4444"
ports:
- "5900"
shm_size: 2g
links:
- "nginx:olympia.test"