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=/badge-img - TAG_URL_ROOT=/tag-img - 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 ports: - '5173:5173' postgres: image: postgres:16.2-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:7.2.4-alpine logging: driver: "none" files: image: andrewgaul/s3proxy:sha-ec12ae0 environment: - JCLOUDS_FILESYSTEM_BASEDIR=/srv/philomena/priv/s3 volumes: - .:/srv/philomena web: build: context: . dockerfile: ./docker/web/Dockerfile args: - APP_DIR=/srv/philomena - S3_SCHEME=http - S3_HOST=files - S3_PORT=80 - S3_BUCKET=philomena volumes: - .:/srv/philomena environment: - AWS_ACCESS_KEY_ID=local-identity - AWS_SECRET_ACCESS_KEY=local-credential logging: driver: "none" depends_on: - app ports: - '8080:80'