Bonjour à tous et merci de votre visite sur ce topic

Je débute avec docker et je souhaite (pour l'instant) mettre en place un container OwnCloud. D'après ce que j'ai compris, il faut utiliser nginx comme reverse-proxy pour rediriger sur le bon container en fonction du sous-domaine utilisé. Il existe aussi un container "docker-gen" qui permet de générer les fichiers de configuration pour nginx.

J'ai donc écrit mon docker-compose comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
version: '2'
services:
  # Serveur Web : NGINX
  nginx:
    image: 'nginx'
    restart: 'always'
    logging:
      driver: 'json-file'
      options:
        max-size: '50m'
        max-file: '10'
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - '/data/Config/nginx/certs:/etc/nginx/certs'
      - '/data/Config/nginx/vhost.d:/etc/nginx/vhost.d'
      - '/data/Config/nginx/conf.d:/etc/nginx/conf.d'
      - '/data/Config/nginx/html:/usr/share/nginx/html'

  # Génère les fichiers de config à NGINX
  docker-gen:
    image: 'jwilder/docker-gen'
    restart: 'unless-stopped'
    command: '-notify-sighup nginx -watch /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf'
    logging:
      driver: 'json-file'
      options:
        max-size: '50m'
        max-file: '10'
    volumes_from:
      - 'nginx'
    volumes:
      - '/var/run/docker.sock:/tmp/docker.sock'
      - '/data/Config/nginx/templates:/etc/docker-gen/templates'

  # Bases de données : MySQL
  mysql:
    image: 'mysql'
    restart: 'unless-stopped'
    ports:
      - '3306:3306'
    environment:
      - 'MYSQL_ROOT_PASSWORD=___'
    volumes:
      - '/data/Config/mysql:/var/lib/mysql'

  # OwnCloud : Cloud libre
  owncloud:
    image: 'owncloud'
    restart: 'unless-stopped'
    environment:
      - 'VIRTUAL_HOST=cloud.___.fr'
    volumes:
      - '/data/Config/owncloud:/var/www/html/config'
      - '/data/Config/owncloud:/var/www/html/data'
      - '/data:/home'
Docker-gen m'a donc généré le fichier /data/Config/nginx/conf.d/default.conf suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
server {
        listen 80 default_server;
        server_name _; # This is just an invalid value which will never trigger on a real hostname.
        error_log /proc/self/fd/2;
        access_log /proc/self/fd/1;
        return 503;
}
upstream cloud.___.fr {
                        # docker_owncloud_1
                        server 172.18.0.5:80;
}
server {
        gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
        server_name cloud.___.fr;
        proxy_buffering off;
        error_log /proc/self/fd/2;
        access_log /proc/self/fd/1;
        location / {
                proxy_pass http://cloud.___.fr;
                proxy_set_header Host $http_host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                # HTTP 1.1 support
                proxy_http_version 1.1;
                proxy_set_header Connection "";
        }
}
Le problème, c'est que quand j'essaie de me rendre sur http://cloud.___.fr/, je me prends l'erreur :
Ce site est inaccessible
cloud.___.fr n’autorise pas la connexion.
Je ne suis pas certain que ce problème vienne de docker ou de sa configuration mais je peux accéder au serveur en SSH et SFTP et je peut également y accéder en FTP avec un autre compte utilisateur.
J'ai paramétré ma Freebox pour rediriger les ports 21, 22, 80, et 443 sur les ports correspondants du serveur.
J'ai également paramétré la redirection de tous les sous domaines (avec le joker *) de ___.fr sur l'adresse IP publique de ma box

Quelqu'un aurait-il une idée de ce que j'aurais pu louper ?
Merci beaucoup