Docker compose:Wordpress与Nginx/LetsEncrypt代理502

Docker compose:Wordpress与Nginx/LetsEncrypt代理502,wordpress,docker-compose,Wordpress,Docker Compose,我的Docker compose文件如下所示: version: '3.2' services: nginx-web: image: nginx labels: com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true" container_name: ${NGINX_WEB:-nginx-web} restart: always ports:

我的Docker compose文件如下所示:

version: '3.2'

services:

  nginx-web:
    image: nginx
    labels:
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true"
    container_name: ${NGINX_WEB:-nginx-web}
    restart: always
    ports:
      - "${IP:-0.0.0.0}:${DOCKER_HTTP:-80}:80"
      - "${IP:-0.0.0.0}:${DOCKER_HTTPS:-443}:443"
    volumes:
      - ./data/webproxy/nginx-data/conf.d:/etc/nginx/conf.d
      - ./data/webproxy/nginx-data/vhost.d:/etc/nginx/vhost.d
      - ./data/webproxy/nginx-data/html:/usr/share/nginx/html
      - ./data/webproxy/nginx-data/certs:/etc/nginx/certs:ro
      - ./data/webproxy/nginx-data/htpasswd:/etc/nginx/htpasswd:ro
    logging:
      driver: ${NGINX_WEB_LOG_DRIVER:-json-file}
      options:
        max-size: ${NGINX_WEB_LOG_MAX_SIZE:-4m}
        max-file: ${NGINX_WEB_LOG_MAX_FILE:-10}

  nginx-gen:
    image: jwilder/docker-gen
    command: -notify-sighup ${NGINX_WEB:-nginx-web} -watch -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
    container_name: ${DOCKER_GEN:-nginx-gen}
    restart: always
    environment:
      SSL_POLICY: ${SSL_POLICY:-Mozilla-Intermediate}
    volumes:
      - ./data/webproxy/nginx-data/conf.d:/etc/nginx/conf.d
      - ./data/webproxy/nginx-data/vhost.d:/etc/nginx/vhost.d
      - ./data/webproxy/nginx-data/html:/usr/share/nginx/html
      - ./data/webproxy/nginx-data/certs:/etc/nginx/certs:ro
      - ./data/webproxy/nginx-data/htpasswd:/etc/nginx/htpasswd:ro
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - ./data/webproxy/nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro
    logging:
      driver: ${NGINX_GEN_LOG_DRIVER:-json-file}
      options:
        max-size: ${NGINX_GEN_LOG_MAX_SIZE:-2m}
        max-file: ${NGINX_GEN_LOG_MAX_FILE:-10}

  nginx-letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion
    container_name: ${LETS_ENCRYPT:-nginx-letsencrypt}
    restart: always
    volumes:
      - ./data/webproxy/nginx-data/conf.d:/etc/nginx/conf.d
      - ./data/webproxy/nginx-data/vhost.d:/etc/nginx/vhost.d
      - ./data/webproxy/nginx-data/html:/usr/share/nginx/html
      - ./data/webproxy/nginx-data/certs:/etc/nginx/certs:rw
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      NGINX_DOCKER_GEN_CONTAINER: ${DOCKER_GEN:-nginx-gen}
      NGINX_PROXY_CONTAINER: ${NGINX_WEB:-nginx-web}
    logging:
      driver: ${NGINX_LETSENCRYPT_LOG_DRIVER:-json-file}
      options:
        max-size: ${NGINX_LETSENCRYPT_LOG_MAX_SIZE:-2m}
        max-file: ${NGINX_LETSENCRYPT_LOG_MAX_FILE:-10}

  database:
    image: mariadb
    container_name: database
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: 7ctDGg5YUwkCPkCW
    entrypoint:
      sh -c "/usr/local/bin/docker-entrypoint.sh --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci"
    volumes:
      - ./data/database/var/lib/mysql:/var/lib/mysql
      - ./data/database:/docker-entrypoint-initdb.d
    networks:
      - backend-network

  auth:
    image: jboss/keycloak
    container_name: auth
    restart: always
    ports:
      - 8443:8443
    environment:
      DB_VENDOR: mariadb
      DB_ADDR: database
      DB_DATABASE: users
      DB_USER: keycloak
      DB_PASSWORD: jk2zKvGkJXBsrNMV
      KEYCLOAK_USER: admin
      KEYCLOAK_PASSWORD: M+f{7_Hc>&Z.;6W6
      JDBC_PARAMS: "ssl=false"
      PROXY_ADDRESS_FORWARDING: 'true'
    volumes:
      - ./data/webproxy/nginx-data/certs/pm-app.de/fullchain.pem:/etc/x509/https/tls.crt
      - ./data/webproxy/nginx-data/certs/pm-app.de/key.pem:/etc/x509/https/tls.key
    depends_on:
      - database
    networks:
      - backend-network

#  fileupload:
#    image: openjdk:14-jdk-alpine
#    container_name: fileupload
#    ports:
#      - 8082:8082
#    depends_on:
#      - database
#      - auth
#    volumes:
#      - ./fileupload-server.jar:/fileupload-server.jar
#    command: ["java", "-jar", "fileupload-server.jar"]
#    networks:
#      - backend-network

#  websocket:
#    image: openjdk:14-jdk-alpine
#    container_name: websocket
#    ports:
#      - 8083:8083
#    depends_on:
#      - database
#      - auth
#    volumes:
#      - ./websocket-server.jar:/websocket-server.jar
#    command: ["java", "-jar", "websocket-server.jar"]
#    networks:
#      - backend-network

#  resource:
#    image: openjdk:14-jdk-alpine
#    container_name: resource
#    ports:
#      - 8081:8081
#    depends_on:
#      - fileupload
#      - websocket
#      - auth
#    volumes:
#      - ./backend/resource-server.jar:/resource-server.jar
#    command: ["java", "-jar", "resource-server.jar"]
#    networks:
#      - backend-network

#  frontend:
#    image: nginx:alpine
#    container_name: frontend
#    ports:
#      - 4200:4200
#    depends_on:
#      - resource
#    volumes:
#      - ./frontend/nginx.conf:/etc/nginx/nginx.conf
#      - ./frontend/dist/propositum-frontend:/usr/share/nginx/html
#    networks:
#      - frontend-network

  wordpress:
    image: wordpress:latest
    container_name: wordpress
    restart: always
    environment:
      WORDPRESS_DB_HOST: database
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: QKJFUfZbv7jMB5ba
      WORDPRESS_TABLE_PREFIX: wp_
      VIRTUAL_HOST: domain.de
      LETSENCRYPT_HOST: domain.de
      LETSENCRYPT_EMAIL: info@domain.de
    depends_on:
      - database
    volumes:
    - wordpress_data:/var/www/html
    networks:
      - backend-network
      - webproxy

  ftp:
    image: stilliard/pure-ftpd:hardened-latest
    container_name: ftp
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
    environment:
      PUBLICHOST: Ip
      FTP_USER_NAME: "ftp"
      FTP_USER_PASS: "+/x~qy//vf(S6L:<"
      FTP_USER_HOME: "/var/www/html"
      FTP_USER_UID: 33
      FTP_USER_GID: 33
    volumes:
      - wordpress_data:/var/www/html
      #- ./data/ftp:/etc/ssl/private
    ports:
      - 21:21
      - 30000:30000

volumes:
  database_data:
  wordpress_data:

networks:
  backend-network:
  frontend-network:
  webproxy:
    external:
      name: "webproxy"

版本:“3.2”
服务:
nginx网络:
图片:nginx
标签:
com.github.jrcs.letsencrypt\u nginx\u proxy\u companion.nginx\u proxy:“true”
容器名称:${NGINX\u WEB:-NGINX WEB}
重新启动:始终
端口:
-“${IP:-0.0.0.0}:${DOCKER_HTTP:-80}:80”
-“${IP:-0.0.0.0}:${DOCKER_HTTPS:-443}:443”
卷数:
-./data/webproxy/nginx data/conf.d:/etc/nginx/conf.d
-./data/webproxy/nginx data/vhost.d:/etc/nginx/vhost.d
-./data/webproxy/nginx data/html:/usr/share/nginx/html
-./data/webproxy/nginx数据/证书:/etc/nginx/certs:ro
-./data/webproxy/nginx data/htpasswd:/etc/nginx/htpasswd:ro
登录中:
驱动程序:${NGINX\u WEB\u LOG\u驱动程序:-json文件}
选项:
最大大小:${NGINX_WEB_LOG_max_size:-4m}
最大文件:${NGINX_WEB_LOG_最大文件:-10}
nginx-gen:
图片:jwilder/docker gen
命令:-notify sighup${NGINX_WEB:-NGINX WEB}-watch-wait 5s:30s/etc/docker gen/templates/NGINX.tmpl/etc/NGINX/conf.d/default.conf
容器名称:${DOCKER\u GEN:-nginx GEN}
重新启动:始终
环境:
SSL_策略:${SSL_策略:-Mozilla中间版}
卷数:
-./data/webproxy/nginx data/conf.d:/etc/nginx/conf.d
-./data/webproxy/nginx data/vhost.d:/etc/nginx/vhost.d
-./data/webproxy/nginx data/html:/usr/share/nginx/html
-./data/webproxy/nginx数据/证书:/etc/nginx/certs:ro
-./data/webproxy/nginx data/htpasswd:/etc/nginx/htpasswd:ro
-/var/run/docker.sock:/tmp/docker.sock:ro
-./data/webproxy/nginx.tmpl:/etc/docker gen/templates/nginx.tmpl:ro
登录中:
驱动程序:${NGINX\u GEN\u LOG\u驱动程序:-json文件}
选项:
最大大小:${NGINX\u GEN\u LOG\u max\u size:-2m}
max文件:${NGINX\u GEN\u LOG\u max\u文件:-10}
nginx letsencrypt:
图片:jrcs/letsencrypt nginx代理伴侣
容器名称:${LETS\u ENCRYPT:-nginx-letsencrypt}
重新启动:始终
卷数:
-./data/webproxy/nginx data/conf.d:/etc/nginx/conf.d
-./data/webproxy/nginx data/vhost.d:/etc/nginx/vhost.d
-./data/webproxy/nginx data/html:/usr/share/nginx/html
-./data/webproxy/nginx数据/证书:/etc/nginx/certs:rw
-/var/run/docker.sock:/var/run/docker.sock:ro
环境:
NGINX\u DOCKER\u GEN\u容器:${DOCKER\u GEN:-NGINX GEN}
NGINX_代理_容器:${NGINX_WEB:-NGINX WEB}
登录中:
驱动程序:${NGINX\u LETSENCRYPT\u LOG\u驱动程序:-json文件}
选项:
最大大小:${NGINX\u LETSENCRYPT\u LOG\u最大大小:-2m}
最大文件:${NGINX\u LETSENCRYPT\u LOG\u最大文件:-10}
数据库:
图片:mariadb
容器名称:数据库
重新启动:始终
端口:
- 3306:3306
环境:
MYSQL_ROOT_密码:7ctDGg5YUwkCPkCW
入口点:
sh-c“/usr/local/bin/docker-entrypoint.sh--字符集服务器=utf8mb4--排序服务器=utf8mb4\u unicode\u ci”
卷数:
-./data/database/var/lib/mysql:/var/lib/mysql
-/数据/数据库:/docker entrypoint initdb.d
网络:
-后端网络
认证:
图片:jboss/keydape
容器名称:auth
重新启动:始终
端口:
- 8443:8443
环境:
DB_供应商:mariadb
数据库地址:数据库
数据库:用户
DB_用户:密钥斗篷
DB_密码:jk2zKvGkJXBsrNMV
密钥斗篷用户:管理员
密钥斗篷密码:M+f{7_Hc>&Z;6W6
JDBC_参数:“ssl=false”
代理地址转发:“true”
卷数:
-./data/webproxy/nginx data/certs/pm app.de/fullchain.pem:/etc/x509/https/tls.crt
-./data/webproxy/nginx data/certs/pm app.de/key.pem:/etc/x509/https/tls.key
取决于:
-数据库
网络:
-后端网络
#文件上载:
#图片:openjdk:14jdk
#容器名称:fileupload
#端口:
#      - 8082:8082
#取决于:
#-数据库
#-认证
#卷数:
#-./fileupload-server.jar:/fileupload-server.jar
#命令:[“java”、“-jar”、“fileupload server.jar”]
#网络:
#-后端网络
#websocket:
#图片:openjdk:14jdk
#容器名称:websocket
#端口:
#      - 8083:8083
#取决于:
#-数据库
#-认证
#卷数:
#-./websocket-server.jar:/websocket-server.jar
#命令:[“java”、“-jar”、“websocketserver.jar”]
#网络:
#-后端网络
#资源:
#图片:openjdk:14jdk
#容器名称:资源
#端口:
#      - 8081:8081
#取决于:
#-文件上传
#-网袋
#-认证
#卷数:
#-./backend/resource server.jar:/resource-server.jar
#命令:[“java”、“-jar”、“resource server.jar”]
#网络:
#-后端网络
#前端:
#图片:nginx:alpine
#容器名称:前端
#端口:
#      - 4200:4200
#取决于:
#-资源
#卷数:
#-./frontend/nginx.conf:/etc/nginx/nginx.conf
#-./frontend/dist/propositum frontend:/usr/share/nginx/html
#网络:
#-前端网络
wordpress:
图片:wordpress:最新
容器名称:wordpress
重新启动:始终
环境:
WORDPRESS_DB_主机:数据库
WORDPRESS\u DB\u名称:WORDPRESS
用户:WORDPRESS
密码:QKJFUfZbv7jMB5ba
WORDPRESS\u表\u前缀:wp_
虚拟主机:domain.de
LETSENCRYPT_主机:domain.de
LETSENCRYPT_电子邮件:info@domain.de
取决于:
-数据库
卷数:
-wordpress_数据:/var/www/html
网络:
-后端网络
-网络代理
ftp:
图片:stilliard/pure ftpd:硬化最新版本
容器名称:ftp
部署:
副本:1份
重新启动\u策略:
条件:故障时
环境:
主持人:Ip
FTP\u用户名:“FTP”

FTP_USER_PASS:“+/x~qy//vf(S6L:它可能与Nginx
default.conf
文件有关。检查
root
目录指令。它可能必须