Bonjour à tous,
J'utilise le couple Docker / Traefik pour proposer des services sur notre réseau interne. J'ai mis en place la gestion des points d'entrées web (80) et webs (443) facilement, mais je bloque pour proposer mysql/mariadb.
Par exemple avec ce docker-compose.yml
J'arrive à accéder avec Firefox av sv.mon.domain et sv-pm.mon.domain. J'essai depuis mon pc d'atteindre avec le client mysql sv_mysql avec :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 version: '3.5' services: sv_mysql: image: mysql:latest container_name: sv_mysql command: --default-authentication-plugin=mysql_native_password --secure-file-priv=/tmp environment: MYSQL_ROOT_PASSWORD: xxxx security_opt: - seccomp:unconfined volumes: - "/sql/portail/dev:/var/lib/mysql" - "./conf.d:/etc/mysql/mysql.conf.d" labels: - "traefik.enable=true" - "traefik.tcp.routers.sv_mysql.rule=HostSNI(`*`)" - "traefik.tcp.routers.sv_mysql.entrypoints=mysql" - "traefik.tcp.services.sv_mysql.loadBalancer.server.port=3306" - "backuppc.active=true" - "backuppc.services=mysql," hostname: sv_mysql.mon.domain networks: - backend - traefik sv_pma: image: phpmyadmin/phpmyadmin:latest container_name: sv_pma depends_on: - sv_mysql environment: MYSQL_ROOT_PASSWORD: sv PMA_USER: root PMA_PASSWORD: sv PMA_HOST: sv_mysql UPLOAD_LIMIT: 16384M labels: - "traefik.enable=true" - "traefik.http.routers.sv_pma.entrypoints=web" - "traefik.http.routers.sv_pma.rule=Host(`sv-pma.mon.domain`)" networks: - backend - traefik # use a Dockerfile sv_www: depends_on: - sv_mysql build: . container_name: sv_www volumes: - "/www/dev/extranet/html:/var/www/html" labels: - "traefik.enable=true" - "traefik.http.routers.sv_www.entrypoints=web" - "traefik.http.routers.sv_www.rule=Host(`sv.mon.domain`)" - "backuppc.active=true" - "backuppc.services=volume," - "backuppc.volume.path=/var/www/html" networks: - backend - traefik networks: backend: name: sv_backend traefik: external: true
Mais rien à faire, après la demande de mot de passe je reste bloqué jusqu'au timeout.Code:mysql -H sv_mysql.mon.domain -u xxxx -p
config de Traefik
Je n'arrive pas à trouver de doc qui explique comment faire fonctionner correctement le SNI car l'idée est de pouvoir proposer autant de container mysql/mariadb que besoin avec une connexion possible hors réseau Traefik, du coup exit la configuration par mappage de port.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 global: sendAnonymousUsage: false checkNewVersion: false api: insecure: true dashboard: true debug: true log: filePath: "/var/log/traefik/applog.log" format: json level: INFO accessLog: filePath: "/var/log/traefik/access.log" providers: docker: endpoint: unix:///var/run/docker.sock exposedByDefault: false network: traefik file: directory: /etc/traefik/dynamic watch: true entryPoints: web: address: ":80" websecure: address: ":443" mysql: address: ":3306/tcp" certificatesResolvers: le: acme: email: contact@xxxxxxx caServer: https://acme-v02.api.letsencrypt.org/directory storage: /letsencrypt/acme.json dnsChallenge: provider: ovh delayBeforecheck: 5 resolvers: - 8.8.8.8 - 8.8.4.4
Avez-vous une idée ?
Merci d'avance.