version: '3' volumes: postgres_data: {} elastic_data: {} services: app: build: context: . dockerfile: ./docker/app/Dockerfile environment: - MIX_ENV=dev - PGPASSWORD=postgres - ANONYMOUS_NAME_SALT=2fmJRo0OgMFe65kyAJBxPT0QtkVes/jnKDdtP21fexsRqiw8TlSY7yO+uFyMZycp - HCAPTCHA_SECRET_KEY=0x0000000000000000000000000000000000000000 - HCAPTCHA_SITE_KEY=10000000-ffff-ffff-ffff-000000000001 - PASSWORD_PEPPER=dn2e0EpZrvBLoxUM3gfQveBhjf0bG/6/bYhrOyq3L3hV9hdo/bimJ+irbDWsuXLP - TUMBLR_API_KEY=fuiKNFp9vQFvjLNvx4sUwti4Yb5yGutBN4Xh10LXZhhRKjWlV4 - OTP_SECRET_KEY=Wn7O/8DD+qxL0X4X7bvT90wOkVGcA90bIHww4twR03Ci//zq7PnMw8ypqyyT/b/C - ADVERT_FILE_ROOT=adverts - AVATAR_FILE_ROOT=avatars - BADGE_FILE_ROOT=badges - IMAGE_FILE_ROOT=images - TAG_FILE_ROOT=tags - AVATAR_URL_ROOT=/avatars - ADVERT_URL_ROOT=/spns - IMAGE_URL_ROOT=/img - BADGE_URL_ROOT=/badges - TAG_URL_ROOT=/tags - ELASTICSEARCH_URL=http://elasticsearch:9200 - REDIS_HOST=redis - DATABASE_URL=ecto://postgres:postgres@postgres/philomena_dev - CDN_HOST=localhost - MAILER_ADDRESS=noreply@philomena.local - START_ENDPOINT=true - SITE_DOMAINS=localhost - S3_SCHEME=http - S3_HOST=files - S3_PORT=80 - S3_BUCKET=philomena - AWS_ACCESS_KEY_ID=local-identity - AWS_SECRET_ACCESS_KEY=local-credential working_dir: /srv/philomena tty: true volumes: - .:/srv/philomena depends_on: - postgres - elasticsearch - redis postgres: image: postgres:14.1-alpine environment: - POSTGRES_PASSWORD=postgres volumes: - postgres_data:/var/lib/postgresql/data logging: driver: "none" elasticsearch: image: elasticsearch:7.9.3 volumes: - elastic_data:/usr/share/elasticsearch/data logging: driver: "none" environment: - discovery.type=single-node ulimits: nofile: soft: 65536 hard: 65536 redis: image: redis:6.2.6-alpine logging: driver: "none" files: build: context: . dockerfile: ./docker/files/Dockerfile volumes: - .:/srv/philomena web: build: context: . dockerfile: ./docker/web/Dockerfile volumes: - .:/srv/philomena logging: driver: "none" depends_on: - app ports: - '8080:80'