version: '3' services: app: build: args: user: invoiceshelf-user uid: 1000 context: ./ dockerfile: Dockerfile image: invoiceshelf-php restart: unless-stopped working_dir: /var/www/ volumes: - ./:/var/www - ./docker-compose/php/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini:rw,delegated networks: - invoiceshelf db: image: mariadb:10.11 restart: always volumes: - db:/var/lib/mysql # If you want to persist data on the host, comment the line above this one... # and uncomment the line under this one. #- ./docker-compose/db/data:/var/lib/mysql:rw,delegated environment: MYSQL_USER: invoiceshelf MYSQL_PASSWORD: invoiceshelf MYSQL_DATABASE: invoiceshelf MYSQL_ROOT_PASSWORD: invoiceshelf ports: - '33006:3306' networks: - invoiceshelf nginx: image: nginx:1.17-alpine restart: unless-stopped ports: - 80:80 volumes: - ./:/var/www - ./docker-compose/nginx:/etc/nginx/conf.d/ networks: - invoiceshelf cron: build: context: ./ dockerfile: ./docker-compose/cron.dockerfile volumes: - ./:/var/www networks: - invoiceshelf volumes: db: networks: invoiceshelf: driver: bridge