شهادات SSL ذاتية التوقيع لـ Traefik

مرحباً بالجميع، أنا جديد في المنتدى. لقد بدأت مؤخراً في استخدام Traefik مع حاويات Docker الخاصة بي، ويجب أن أقول إنه رائع. حالياً، أحاول جعل إحدى حاويات Docker تستخدم شهادة SSL موقعة ذاتياً مخصصة. لقد اتبعت بعض التعليمات التي جمعتها من تصفح الإنترنت، وجميع الأمور الأخرى تعمل بشكل جيد، لكن الحاوية تستمر في استخدام شهادة افتراضية من Traefik بدلاً من الشهادة المخصصة التي أريد استخدامها. هل يمكن لأحد مساعدتي في كيفية تحقيق ذلك من فضلك؟ بصراحة، لست واضحاً تماماً حول كيفية اختيار حاويات Docker واستخدامها لشهادة SSL، ولا يبدو أن الوثائق التي قرأتها توضح ذلك أيضاً. إليك ما قمت به حتى الآن.

ملف Docker Compose YAML الخاص بـ Traefik

version: '3'
services:
  traefik:
    image: "traefik:v2.2"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ~/docker-data/traefik/traefik.yml:/etc/traefik/traefik.yaml:ro
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.api.rule=Host(`traefik.com`)"
      - "traefik.http.routers.api.entrypoints=insecure"
      - "traefik.http.routers.api.service=api@internal"
      - "traefik.http.routers.api.middlewares=api-auth"
      - "traefik.http.middlewares.api-auth.basicauth.users=admin:..."
    container_name: traefik
networks:
  default:
    external:
      name: "web"

ملف Traefik YAML الخاص بي

providers: # يمكنك إضافة أكثر من مورد إذا لزم الأمر
  docker:
    endpoint: "unix:///var/run/docker.sock"
    network: "web" # شبكة Docker مخصصة
    exposedByDefault: false # إظهار الحاويات المفعلة صراحةً فقط

  file:
    filename: ~/docker-data/traefik/dynamic_conf.yml
    watch: true

entryPoints:
  insecure:
    address: ":80"
  secure:
    address: ":443"

api:
  dashboard: true

ملف التكوين الديناميكي الخاص بي

# التكوين الديناميكي
tls:
  certificates:
    - certFile: "~/ssl/bwtest-cert.pem"
      keyFile: "~/ssl/bwtest-key.pem"

حاوية Docker الخاصة بي:

```
---
version: '3'
services:
  bwtest:
    image: bitwardenrs/server
    restart: always
    container_name: bwtest
    volumes:
      - bw-test-data:/data
#      - bw-test-ssl:/ssl
    environment:
      LOG_FILE: '/data/bw.log'
      SHOW_PASSWORD_HINT: 'true'
    labels:

      - traefik.enable=true
      - traefik.docker.network=web
      - traefik.http.middlewares.redirect-https.redirectScheme.scheme=https
      - traefik.http.middlewares.redirect-https.redirectScheme.permanent=true
      - traefik.http.routers.bitwarden-ui-https.rule=Host(`bwtest.com`)
      - traefik.http.routers.bitwarden-ui-https.entrypoints=secure
      - traefik.http.routers.bitwarden-ui-https.tls=true
      - traefik.http.routers.bitwarden-ui-https.service=bwtest
      - traefik.http.routers.bitwarden-ui-http.rule=Host(`bwtest.com`)
      - traefik.http.routers.bitwarden-ui-http.entrypoints=insecure
      - traefik.http.routers.bitwarden-ui-http.middlewares=redirect-https
      - traefik.http.routers.bitwarden-ui-http.service=bwtest
      - traefik.http.services.bwtest.loadbalancer.server.port=80
      - traefik.http.routers.mydomain.tls.domains[0].main=bwtest.com
      - traefik.http.routers.mydomain.tls.domains[0].sans=www.bwtest.com
    networks:
      - web
networks:
  web:
    external: true
volumes:
  bw-test-data:
  bw-test-ssl:

تم حل المشكلة. اتضح أنها كانت بسبب تعيين غير صحيح للأحجام في ملف Docker Compec الخاص بـ Traefik.