12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- ---
- version: '3'
- # In order to set configuration, please use a .env file in
- # your compose project directory (the same directory as your
- # docker-compose.yml), and set database options, application
- # name, key, and other settings there.
- # A list of available settings is available in .env.example
- #
- # The services should scale properly across a swarm cluster
- # if the volumes are properly shared between cluster members.
- services:
- ## App and Worker
- app:
- # Comment to use dockerhub image
- build:
- context: .
- dockerfile: contrib/docker/Dockerfile.apache
- image: pixelfed
- restart: unless-stopped
- env_file:
- - .env.docker
- volumes:
- - app-storage:/var/www/storage
- - app-bootstrap:/var/www/bootstrap
- - "./.env.docker:/var/www/.env"
- networks:
- - external
- - internal
- ports:
- - "8080:80"
- depends_on:
- - db
- - redis
- worker:
- build:
- context: .
- dockerfile: contrib/docker/Dockerfile.apache
- image: pixelfed
- restart: unless-stopped
- env_file:
- - .env.docker
- volumes:
- - app-storage:/var/www/storage
- - app-bootstrap:/var/www/bootstrap
- networks:
- - external
- - internal
- command: gosu www-data php artisan horizon
- depends_on:
- - db
- - redis
- ## DB and Cache
- db:
- image: mysql:8.0
- restart: unless-stopped
- networks:
- - internal
- command: --default-authentication-plugin=mysql_native_password
- env_file:
- - .env.docker
- volumes:
- - "db-data:/var/lib/mysql"
- redis:
- image: redis:5-alpine
- restart: unless-stopped
- env_file:
- - .env.docker
- volumes:
- - "redis-data:/data"
- networks:
- - internal
- volumes:
- db-data:
- redis-data:
- app-storage:
- app-bootstrap:
- networks:
- internal:
- internal: true
- external:
- driver: bridge
|