# Configuration nginx pour avec duniter et docker

**URL:** https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837
**Category:** Duniter-v1
**Tags:** docker, nginx
**Created:** [23 December 2023 08:29 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837 "2023-12-23T08:29:45Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![ecpl974](https://forum.duniter.org/user_avatar/forum.duniter.org/ecpl974/32/7984_2.png) [@ecpl974](https://forum.duniter.org/u/ecpl974)
#### Post date: [23 December 2023 08:29 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/1 "2023-12-23T08:29:45Z")

</div>

Bonjour,

J’ai installé un serveur en ligne avec Duniter via docker.  
Ca fonctionne bien mais je n’arrive pas à configurer le nginx, toutes les redirections des ports vers des sous dossier https ne fonctionne pas.  
Et j’ai juste la page nginx par defaut qui s’affiche à la racine du https.  
J’ai utilisé une des config que j’ai trouvé sur le forum en l’adaptant mais ca ne fonctionne pas :

```auto

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name duniter.mondomaine.fr;

    ssl_certificate /etc/letsencrypt/live/duniter.mondomaine.fr/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/duniter.mondomaine.fr/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/duniter.mondomaine.fr/chain.pem;
    include snippets/ssltuning.conf;
    include snippets/headers.conf;

    location / {
        proxy_pass http://127.0.0.1:10901;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

    location /admin {
        proxy_pass http://127.0.0.1:9220;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

   location /ws2p {
                proxy_pass http://127.0.0.1:20901;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
    }
}

```

Une idée ? @Pini ?  
Merci !

---

<div class="post-metadata">

### Author: ![Pini](https://forum.duniter.org/user_avatar/forum.duniter.org/pini/32/6819_2.png) [@Pini](https://forum.duniter.org/u/Pini)
#### Post date: [23 December 2023 10:47 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/2 "2023-12-23T10:47:40Z")

</div>

Perso j’utilise un fork de nginx-proxy + acme-companion pour automatiser cette configuration et ne pas me prendre la tête.

À la lecture de ta conf je vois que tu n’écoutes que sur le port 443. Dans tes tests as-tu bien saisi ton URL avec `https://` ?

Que donne un test en direct sans passer par nginx ? Genre :

```auto
$ ssh -L10901:localhost:10901 <ton_serveur>

```

puis sur ton PC test de l’URL [http://localhost:10901](http://localhost:10901).

---

<div class="post-metadata">

### Author: ![ecpl974](https://forum.duniter.org/user_avatar/forum.duniter.org/ecpl974/32/7984_2.png) [@ecpl974](https://forum.duniter.org/u/ecpl974)
#### Post date: [26 December 2023 22:59 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/3 "2023-12-26T22:59:50Z")

</div>

Merci pour ta réponse rapide. Désolé de répondre que maintenant.  
Oui; je fais bien un test avec https://  
il donne juste la page nginx

Je n’ai pas fait le test en ouvrant un tunnel ssh mais j’ai lancé un docker test en mettant l’ip publique au lieu de 127.0.0.1 et on a bien la page admin de duniter sur le port 9220 mais rien sur 10901 ni sur 20901 d’ailleurs… du coup, effectivement, si le serveur duniter ne démarre pas sur le port…  
Note : en faisant un curl, j’ai aussi une erreur sur le [http://127.0.0.1:10901](http://127.0.0.1:10901)

Dans ce cas, où serait le pb du docker sur le port 10901 et 20901 ?  
j’ai pourtant bien lancé :  
docker run -d -p127.0.0.1:9220:9220 -p10901:10901 -p20901:20901 --name duniter duniter/duniter

Note : j’avais vu que sur le forum, on parlait de nginx-proxy + acme-companion  
mais je n’ai pas trop cherché pour le mettre en place… mais si plus simple, je veux bien de l’aide pour le mettre en place.

Je te remercie par avance

---

<div class="post-metadata">

### Author: ![Pini](https://forum.duniter.org/user_avatar/forum.duniter.org/pini/32/6819_2.png) [@Pini](https://forum.duniter.org/u/Pini)
#### Post date: [27 December 2023 14:42 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/4 "2023-12-27T14:42:42Z")

</div>

Voici une petite archive à décompresser sur ton serveur. Il y a deux sous-répertoires :

- `reverse-proxy`
  1. Se placer dedans
  2. Adapter la variable `DEFAULT_EMAIL` du fichier `docker-compose.yml` avec ton adresse mail
  3. Lancer les services avec la commande `docker-compose up -d`

- `duniter`
  1. Se placer dedans
  2. Adapter la variable `DNS_NAME` du fichier `.env` avec le nom DNS associé à ton neoud
  3. Lancer le service avec `docker-compose up -d`

Une fois les services lancés vérifier dans les logs du conteneur `letsencrypt` qu’un certificat a bien été généré. Ça doit ressembler à ça :

```auto
$ docker logs -f letsencrypt`
[Wed Dec 20 19:32:55 UTC 2023] Cert success.
-----BEGIN CERTIFICATE-----
G9Hesvo6sBUtUh7SGzY2s8k8hyby8n4hsxmpLzQlCN4ENyNQfpfNiDCGnmkm7TgO
...
/jpdW6oTeoifyEOMrcDknWJ84cgv==
-----END CERTIFICATE-----

```

Si c’est OK, modifier à nouveau le fichier `.env` pour désactiver le mode test :

```auto
LETSENCRYPT_TEST=false

```

Puis relancer à nouveau le service duniter avec `docker-compose up -d`.

Enfin vérifier dans les logs du conteneur `letsencrypt` qu’un nouveau certificat est généré.

Et vérifier dans les logs du conteneur `duniter_v1` que la synchro se déroule comme il faut.

_Note importante :_  
Cette configuration prend tout en charge : le reverse-proxy et le noeud duniter. Pour que ça fonctionne correctement il faut désactiver ta conf nginx locale.

EDIT: nouvelle archive après correction de quelques erreurs.  
[duniter-v1-compose.tar.gz](https://forum.duniter.org/uploads/short-url/d4zaU0VIZJr9kLGKoTwBKCS6R53.gz) (1,1 Ko)

---

<div class="post-metadata">

### Author: ![ecpl974](https://forum.duniter.org/user_avatar/forum.duniter.org/ecpl974/32/7984_2.png) [@ecpl974](https://forum.duniter.org/u/ecpl974)
#### Post date: [8 January 2024 18:23 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/5 "2024-01-08T18:23:36Z")

</div>

Merci encore @Pini  
Ca ne fonctionne toujours pas…

---

<div class="post-metadata">

### Author: ![Pini](https://forum.duniter.org/user_avatar/forum.duniter.org/pini/32/6819_2.png) [@Pini](https://forum.duniter.org/u/Pini)
#### Post date: [8 January 2024 18:31 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/6 "2024-01-08T18:31:00Z")

</div>

> [@ecpl974](#):
>
> Ca ne fonctionne toujours pas…

J’en suis désolé. Si tu veux on peut se caler une audio un de ces soir pour que je puisse jeter un oeil.

---

<div class="post-metadata">

### Author: ![ecpl974](https://forum.duniter.org/user_avatar/forum.duniter.org/ecpl974/32/7984_2.png) [@ecpl974](https://forum.duniter.org/u/ecpl974)
#### Post date: [8 January 2024 18:31 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/7 "2024-01-08T18:31:54Z")

</div>

Oui, ca serait l’idéal !

---

<div class="post-metadata">

### Author: ![ecpl974](https://forum.duniter.org/user_avatar/forum.duniter.org/ecpl974/32/7984_2.png) [@ecpl974](https://forum.duniter.org/u/ecpl974)
#### Post date: [8 January 2024 18:37 UTC](https://forum.duniter.org/t/configuration-nginx-pour-avec-duniter-et-docker/11837/8 "2024-01-08T18:37:28Z")

</div>

Je t’écris dans le chat pour se caler l’audio ou en message privé…
