services: nginx: build: context: . dockerfile: nginx.dockerfile depends_on: - php - mysql ports: - 80:80 - 443:443 labels: - "traefik.enable=true" - "traefik.http.routers.wordpress.rule=Host(`yourdomain.com`)" - "traefik.http.routers.wordpress.entrypoints=web" - "traefik.http.services.wordpress.loadbalancer.server.port=80" volumes: - ./wordpress:/var/www/html mysql: image: mysql:latest environment: MYSQL_DATABASE: wp MYSQL_USER: wp MYSQL_PASSWORD: secret MYSQL_ROOT_PASSWORD: secret php: build: context: . dockerfile: php.dockerfile volumes: - ./wordpress:/var/www/html wp: build: context: . dockerfile: php.dockerfile volumes: - ./wordpress:/var/www/html entrypoint: ['wp', '--allow-root']