View Issue Details

IDProjectCategoryView StatusLast Update
0000233e-comBoxInstallation sur Linuxpublic2025-06-13 02:45
ReporterPascal Assigned Toaporaf  
PrioritynormalSeverityminorReproducibilityhave not tried
Status assignedResolutionopen 
PlatformÉtablissement scolaireOSLinuxOS VersionAutre version
Summary0000233: Installation sans reverse Proxy
Description

Bonjour,

Je dois installer ecombox pour une nouvelle formation dans notre établissement.

J'ai testé depuis mon domicile dans virtualbox, tout fonctionnait bien.

Dans l'établissement, dans une VM Proxmox, et derrière un proxy, ça passe déjà moins bien.

J'ai converti ma vm virtualbox pour la mettre dans Proxmox, et tenter une nouvelle installation avec les paramètres de l’établissement (j'ai également configuré le proxy avant tout)

Pour l'installation, j'ai du modifier le fichier start_configure_application.sh pour que curl connaisse le proxy (avec la commande sed).

L'installation s'est bien terminée, sauf que l'interface web n'est pas accessible, le site n'existe pas.

TagsNo tags attached.
Quantité de mémoire vive (en Go)8
Machine virtuelleOui
Passage par un proxyOui
Qualité de la connexion InternetExcellente
Navigateur(s) éventuellement utilisé(s)Firefox, Autre
Avez-vous tenté de réinitialiser l'environnement ?Oui
Moment où l'incident est survenuInstallation de l'application

Activities

aporaf

2025-06-11 08:44

administrator   ~0001330

Bonjour,

Pouvez-vous nous dire ce que vous avez modifié dans le fichier start_configuration.sh ? Avez-vous au préalable saisi ces commandes comme recommandé dans la documentation en cas d'utilisation d'un proxy :

  • Définition des variables d'environnement nécessaires à l'exécution de commandes curl via un proxy :
    • export http_proxy="<IPproxy>:<port>"
      • export https_proxy=$http_proxy

L'interface Web est inaccessible de l'extérieur ou de l'intérieur de l'établissement ? Pouvez-vous également sur Firefox (ou sur Chrome), avant, par exemple, de recharger la page de l'interface :

  • faire un "clic-droit", puis "inspecter",
  • cliquer sur console,
  • tenter de vous connecter,
  • copier/coller le résultat (via un copier/coller dans un fichier plus une capture d'écran).

Merci de nous envoyer aussi les log relatifs à l'installation (/var/log/e-combox.log).

Cordialement,

Pascal

2025-06-11 16:49

reporter   ~0001331

Les navigateurs sont Firefox Brave et un autre naigateur libre... aucun ne fonctionne.
Les paramètres proxy sont les bons dans wgetrc, apt.conf, export_ http_proxy="<IPproxy>:<port>",...
Les modifications que j'ai faites avec la commande sed 's/curl -fsSL/curl -fsSL -x monproxy:monport/g'.
J'ai rencontré de multiples erreurs que j'ai réussi à contourné ou résoudres.
Par contre, je ne souhaite pas de reverse proxy et avec l'option indiquée dans la doc (-r "N" si je me souviens bien) il me l'installe quand même.
Je vous donnerais le reste des résultats demain, car là je ne suis plus dans l'établissement.
L'interface web est inaccessible en interne.

Merci pour votre aide.

aporaf

2025-06-11 17:37

administrator   ~0001332

Bonsoir,

Je ne comprends pas ce qu'il se passe et qui fait que le système vous installe un reverse proxy. Nous n’avons jamais eu ce comportement.
Pouvez-vous vérifier ce que vous avez dans le fichier /opt/e-combox/param.conf au niveau de la variable RP_EXT : il faut qu'il y ait "N" et ce n'est pas la peine de mettre une option lorsque vous appelez le script de configuration.
Je ne comprends pas trop pourquoi vous avez dû modifier start_configure_application.sh pour le proxy. Si vous avez bien rempli les variables ADRESSE_PROXY et NO_PROXY du param.conf ainsi que les variables d'environnement nécessaires, ça aurait dû fonctionner !

J'attends les logs pour y voir plus clair.

Cordialement,

Pascal

2025-06-12 15:28

reporter   ~0001335

Bonjour,
Voici le fichier log en pièces jointe.
Avec également une capture d'écran de deux navigateur.

Merci

ecombox-2.log (61,138 bytes)   
Configuration d'e-comBox le jeu. 12 juin 2025 09:48:53 +04
 avec la version du script 4.4.0.
Docker version 28.2.2, build e6534b4
Docker Compose version v2.36.2
L'ancien binaire de Docker Compose n'est pas présent
Initialisation des paramètres du fichier param.conf

Vérification des paramètres du fichier param.conf

VALIDATION_LICENCE=true

La clé de chiffrement a été créée et protégée.
Chiffrement du mot de passe de Portainer.

ADRESSE_IP_PRIVEE=172.16.160.25
l'IP à tester est 172.16.160.25
L'adresse IP est valide.

DOMAINE=
Pas de domaine saisi.

RP_EXT=N
CHEMIN=
PORT_PORTAINER=8880
PORT_RP=8800
PORT_REGISTRY=5443
ADRESSE_PROXY=172.16.160.1:3128
NO_PROXY=
NET_ECB=192.168.97.0/24
DEL_IMAGES=false
CHEMIN_CERT=
CHEMIN_KEY=
MAIL=
Pas d'adresse mail saisi.

CODE_PAYS=FR
NOM_PAYS=France
NOM_REGION=Reunion
NOM_ORGANISATION=ReseauCerta
OAUTH_ENABLE=false
SSO_ENABLE=
CLIENT_ID=
CLIENT_SECRET=
AUTHORIZATION_URL=
ACCESS_TOKEN_URL=
RESOURCE_URL=
LOGOUT_URL=
USER_IDENTIFIER=
SCOPES=
CERT_OAUTH=
PROPRIETAIRE=
ADRESSE_POSTALE=
IMMATRICULATION=
HEBERGEUR=
Fichier de paramètres sans erreurs apparentes.
Ajout des variables d'environnement à systemd (/etc/systemd/system/docker.service.d/http-proxy.conf).

Redémarrage de Docker.
le fichier config.json est bien vide.
Ajout des paramètres du proxy 172.16.160.1:3128 et  dans ~/.docker/config.json.

Vérification du réseau 192.168.97.0/24 pour l'application... Rien à faire
Le réseau 192.168.97.0/24 est utilisé pour l'application.

Paramètres non renseignés dans param.conf. Pas d'authentification possible sur le docker HUB.

Clonage dans 'e-combox_reverseproxy'...
Mise à jour de /opt/e-combox/e-combox_reverseproxy/.env... Fait.

4.4: Pulling from reseaucerta/nginx
Digest: sha256:5a3b1bf7da82b4b44e895ad0a9833f68b839df7038042f6143527f4d6287ecf4
Status: Image is up to date for reseaucerta/nginx:4.4
docker.io/reseaucerta/nginx:4.4
4.4: Pulling from reseaucerta/docker-gen
Digest: sha256:c5f4d93c5df250258bab1148cb67a424734f13d7bc384a243f3264aa1753b460
Status: Image is up to date for reseaucerta/docker-gen:4.4
docker.io/reseaucerta/docker-gen:4.4
Le reverse proxy a été lancé.

Il faut créer un certificat auto-signé.
......+..........+..+.......+........+...+...+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*....+.+...+...........+....+......+..+....+...+......+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...........+..........................+.+.....+.+..+.......+...........+............+......+.......+.....+.......+.....+.+...............+......+......+...............+.........+.....+.+..+......................+..............................+........+..........+.....+.+..+.........+....+.....+.+........+.............+........+......+................+....................+.......+......+..+.......+.................+...+...+...............+...+...............+......+....+.........+.....+.+.........+............+..............+.......+...+.........+.....+.......+.....+......+.......+..+...............+.........+..........+.....+......+...+......+............+.......+.....+...+.............+.........+..+...+.+......+..................+......+....................+......+....+..+..................+.+...+......+............+.........+...+............+........+......+....+..+...+......+.......+..+.+...........+...+...+.......+...+..............+......+....+...+.....+.......+...+........+....+........+......+.....................+.+............+......+.....+....+..+.....................+..........+.....+..................+.+.........+.....................+........................+......+...+........+.......+........+.........+...............+.+..+......+......+......+....+.........+...................................+.+...............+......+.........+........+..........+..+.+..+...+..........+.....+..........+..............+..................+......+.........+................+..+............+......+....+..+......+...+......+......+....+...+........+....+..............+....+..................+.....+...+....+...............+...+.....+...................+........+.+........................+...........+.......+..+......+....+...+..+..........+...+...+............+...+......+........+.+..+..........+..+.+......+......+..+......+......+...+...+....+...........+.........................+..+.......+...+..+.............+...+...+......+......+...+....................+.+......+........+.......+........................+.....+...+...+............+.......+...+.....+.........................+..+...................+..+.......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
..+.+.....+.+...+.........+.....+............+...+......+.+...+...+..+...........................+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+...+......+...+......+..........+...........+....+......+.....+...+...............+.......+........+.......+.....+.+..+...+...+....+...+..+...+....+.....+.+...+.........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+...+....+..............+.........+......+.+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
2025/06/12 07:49:19 [emerg] 27#27: no host in upstream ":443/" in /etc/nginx/conf.d/default.conf:160
nginx: [emerg] no host in upstream ":443/" in /etc/nginx/conf.d/default.conf:160
Le certificat créé a été installé.
Il n'y a pas de registry lancé avec le bon certificat et/ou le bon port.

e-combox_registry
Le registry existe mais n'est pas correctement lancé, il sera supprimé puis recréé.
..+.................+....+.....+.+......+.........+......+..+......+....+...+...+.....+....+..+.+............+..+......+...+.......+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+.+.........+..+...+.+.....+.+.....+.......+......+...........+.+..+.+..+.........+....+..+.......+.....+.+.........+..+....+...........+.+..+...+...+............+.......+..+....+.....+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...........+......+..............+...+.......+......+..+...+.........+...+.........+.........+.......+...+...........+................+.................+............+...+...+...+.........+......+.......+........+.+.........+..+.......+........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
......+.+.........+..+.......+.....+...+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*......+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.......+..+...............+............+.............+..+...+...+.......+........+.........+..........+...+..+......+.+...+.................+..........+.......................+...+...+..........+....................+.+...+.....+...+.......+..+...............+..........+..............+....+...............+..+...+.......+......+.........+......+.....+.............+..+..........+..+............................+.....+.......+...+..............+.+........+......+......+.........+...............+...+.......+........+..........+................................+.........+......+...+................+..+.........+...+..........+......+............+.....+.......+...........+.+......+...+...........+...+.......+.....+.............+..+....+..+.......+..+......+..........+............+.....................+.....+...............+.+.....+.........+....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
Le certificat pour le push du Registry a été créé.
.................+...........+......+....+.........+.....+....+...+........+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..............+.......+.....+...+................+...+......+..+...+.......+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+.....+....+...+...........+......+...+......+......+.+.........+..............+.......+...+..+.......+.....................+.........+..+....+...........+.+...+..+...+.+........+...+.......+...+...+.....+....+..+...+..........+......+.....+................+........+.....................+.+...+.................+.+.....+...+....+......+......+...+........+..........+..+..........+..+....+.....+.+...........+.......+...+..+......+.+...+..................+.........+.....+....+......+...............+.....+.+..+.............+.........+.....+.+.........+.....+.+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
......+...+..........+...+...+..+....+...............+......+..+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.............+...+..+....+.........+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+............+.....................................+..+...+...+.......+........+...+...............+....+......+............+...+..........................+.+...+...........+...+...............+.+.....+.......+...+...........+.+........+..........+.....+.+...........+...+....+...+........+........................+...+....+...+......+...........+...+............+.............+...........+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
Le certificat pour la récupération des images a été créé.
Les certificats pour le Registry ont été installés.
3d49b4847d80924f72ff221c73a7277d03960e85eebe51f9879926ec4aedeeda
Le registry a été lancé.

Le réseau de l'e-combox est correctement rattaché au conteneur e-combox_registry.
4.4: Pulling from reseaucerta/git-http-server
Digest: sha256:26dc768171bd2208cadd79483bae9d6a32bb8e950a4f74be8f47c14c25e36848
Status: Image is up to date for reseaucerta/git-http-server:4.4
docker.io/reseaucerta/git-http-server:4.4
e-combox_gitserver
e-combox_gitserver
e-combox_git-data
cb144288b9d29e72286f30b2b28e7f0d3ff14c3fb1d25adcf78e7cea5d6c1d8a
Le serveur git existait mais il a été supprimé et recréé. Il a correctement été lancé.

Le fichier config.json est supprimé pour Portainer.
Portainer existe et va être remplacé.

portainer-app
portainer-app
2.27.4: Pulling from portainer/portainer-ce
Digest: sha256:449202d765d28ec443c1657fc1121aff92b8afcee6b58bcea36e1f0e81e8297c
Status: Image is up to date for portainer/portainer-ce:2.27.4
docker.io/portainer/portainer-ce:2.27.4
7b4296b90c782922fe78a8799360725be671a997fccc8679a89be5586565e8ce
Portainer a été lancé.

Récupération des certificats intermédiaires de Let's encrypt pour les intégrer à Portainer
--2025-06-12 09:49:46--  https://letsencrypt.org/certs/lets-encrypt-r3.pem
Connexion à 172.16.160.1:3129… connecté.
requête Proxy transmise, en attente de la réponse… 200 OK
Taille : 1826 (1,8K) [application/x-pem-file]
Sauvegarde en : « /opt/e-combox/lets-encrypt-r3.pem »

     0K .                                                     100% 29,6M=0s

2025-06-12 09:49:48 (29,6 MB/s) — « /opt/e-combox/lets-encrypt-r3.pem » sauvegardé [1826/1826]

--2025-06-12 09:49:48--  https://letsencrypt.org/certs/isrgrootx1.pem
Connexion à 172.16.160.1:3129… connecté.
requête Proxy transmise, en attente de la réponse… 200 OK
Taille : 1939 (1,9K) [application/x-pem-file]
Sauvegarde en : « /opt/e-combox/isrgrootx1.pem »

     0K .                                                     100% 31,6M=0s

2025-06-12 09:49:49 (31,6 MB/s) — « /opt/e-combox/isrgrootx1.pem » sauvegardé [1939/1939]

--2025-06-12 09:49:49--  https://letsencrypt.org/certs/isrg-root-x2.pem
Connexion à 172.16.160.1:3129… connecté.
requête Proxy transmise, en attente de la réponse… 200 OK
Taille : 790 [application/x-pem-file]
Sauvegarde en : « /opt/e-combox/isrg-root-x2.pem »

     0K                                                       100% 26,5M=0s

2025-06-12 09:49:50 (26,5 MB/s) — « /opt/e-combox/isrg-root-x2.pem » sauvegardé [790/790]

Redémarrage de Portainer
Test mdp par défaut de portainer : {"message":"Invalid credentials","details":"Unauthorized"}

Tentative de connexion à l'API...
Connexion à l'API de Portainer... Succès

Configuration d'e-comBox
e-combox
ecombox_data
ecombox_config
ecombox_conf_nginx
4.4: Pulling from reseaucerta/e-combox
Digest: sha256:918c6963c85b1edc5bc6c5ec78ed9d5c4e675937f36e2a21191596c3b75311d9
Status: Image is up to date for reseaucerta/e-combox:4.4
docker.io/reseaucerta/e-combox:4.4
L'e-comBox a été téléchargé.

c580e0efb13ded01dfa5e586f2392bea6c8ed5bc0abbf6743e3ae9b0acd95fae
L'e-comBox' a été lancé.

L'URL https://localhost:4300/portainer/api est remplacée par https://172.16.160.25:8800/portainer/api.

Gestions des stacks et des images
Test mdp par défaut de portainer : {"message":"Invalid credentials","details":"Unauthorized"}

Tentative de connexion à l'API...
Connexion à l'API de Portainer... Succès

Récupération des stacks...

Arrêt du stack fsserver...

Retour de l'arrêt : {"Id":1,"Name":"fsserver","Type":2,"EndpointId":1,"SwarmId":"","EntryPoint":"docker-compose-FSserver.yml","Env":null,"ResourceControl":null,"Status":2,"ProjectPath":"/data/compose/1","CreationDate":1748507650,"CreatedBy":"admin","UpdateDate":0,"UpdatedBy":"","AdditionalFiles":null,"AutoUpdate":null,"Option":null,"GitConfig":{"URL":"https://forge.apps.education.fr/e-combox/e-combox_docker-compose","ReferenceName":"refs/heads/4.4","ConfigFilePath":"docker-compose-FSserver.yml","Authentication":null,"ConfigHash":"9dc5bd9034035c1f868fec889586fed1c529a675","TLSSkipVerify":false},"FromAppTemplate":false,"Namespace":""}
Aucun stack à supprimer.
Mise à jour de alpine:latest... Pas de mise à jour
Toutes les images sont à jour.

Récupération des stacks...

Retour du démarrage : {"Id":1,"Name":"fsserver","Type":2,"EndpointId":1,"SwarmId":"","EntryPoint":"docker-compose-FSserver.yml","Env":null,"ResourceControl":null,"Status":1,"ProjectPath":"/data/compose/1","CreationDate":1748507650,"CreatedBy":"admin","UpdateDate":0,"UpdatedBy":"","AdditionalFiles":null,"AutoUpdate":null,"Option":null,"GitConfig":{"URL":"https://forge.apps.education.fr/e-combox/e-combox_docker-compose","ReferenceName":"refs/heads/4.4","ConfigFilePath":"docker-compose-FSserver.yml","Authentication":null,"ConfigHash":"9dc5bd9034035c1f868fec889586fed1c529a675","TLSSkipVerify":false},"FromAppTemplate":false,"Namespace":""}
Redémarrage des sites... Fait
Test mdp par défaut de portainer : {"message":"Invalid credentials","details":"Unauthorized"}

Tentative de connexion à l'API...
Connexion à l'API de Portainer... Succès

Ajout des noms de stacks dans un fichier...

Réintégration des addons Odoo à la racine si nécessaire.
Rétablissement des droits sur les volumes Odoo... Fait

Gestion de l'équipe "Profs"
Test mdp par défaut de portainer : {"message":"Invalid credentials","details":"Unauthorized"}

Tentative de connexion à l'API...
Connexion à l'API de Portainer... Succès
L'équipe "Profs" existe déjà.

Retour AJOUT_PERMISSIONS : {"Id":1,"Name":"primary","Type":1,"ContainerEngine":"","URL":"unix:///var/run/docker.sock","GroupId":1,"PublicURL":"","Gpus":null,"TLSConfig":{"TLS":false,"TLSSkipVerify":false},"AzureCredentials":{"ApplicationID":"","TenantID":"","AuthenticationKey":""},"TagIds":[],"Status":1,"Snapshots":[{"Time":1749707391,"DockerVersion":"28.2.2","Swarm":false,"TotalCPU":1,"TotalMemory":16770265088,"ContainerCount":7,"RunningContainerCount":7,"StoppedContainerCount":0,"HealthyContainerCount":0,"UnhealthyContainerCount":0,"VolumeCount":11,"ImageCount":7,"ServiceCount":0,"StackCount":2,"DockerSnapshotRaw":{"Containers":[{"Id":"7b4296b90c782922fe78a8799360725be671a997fccc8679a89be5586565e8ce","Names":["/portainer-app"],"Image":"portainer/portainer-ce:2.27.4","ImageID":"sha256:30d09e5cd7971815bd277ab897bd254a5c8222971be4b00e1f0bc8f301d50890","Command":"/portainer --admin-password $2y$05$BZDHtzwzM1DEgL5pjAePAuoAbX6DknRE3XW3aU6HgBbwYdqwRcj3q -H unix:///var/run/docker.sock --log-level=DEBUG","Created":1749707381,"Ports":[{"PrivatePort":8000,"Type":"tcp"},{"PrivatePort":9000,"Type":"tcp"},{"IP":"0.0.0.0","PrivatePort":9443,"PublicPort":8880,"Type":"tcp"},{"IP":"::","PrivatePort":9443,"PublicPort":8880,"Type":"tcp"}],"Labels":{"com.docker.extension.additional-urls":"[{\"title\":\"Website\",\"url\":\"https://www.portainer.io?utm_campaign=DockerCon&utm_source=DockerDesktop\"},{\"title\":\"Documentation\",\"url\":\"https://docs.portainer.io\"},{\"title\":\"Support\",\"url\":\"https://join.slack.com/t/portainer/shared_invite/zt-txh3ljab-52QHTyjCqbe5RibC2lcjKA\"}]","io.portainer.server":"true","org.opencontainers.image.vendor":"Portainer.io","com.docker.desktop.extension.api.version":">= 0.2.2","com.docker.extension.publisher-url":"https://www.portainer.io","org.opencontainers.image.description":"Docker container management made simple, with the world’s most popular GUI-based container management platform.","com.docker.extension.detailed-description":"<p data-renderer-start-pos=\"226\">Portainer&rsquo;s Docker Desktop extension gives you access to all of Portainer&rsquo;s rich management functionality within your docker desktop experience.</p><h2 data-renderer-start-pos=\"374\">With Portainer you can:</h2><ul><li>See all your running containers</li><li>Easily view all of your container logs</li><li>Console into containers</li><li>Easily deploy your code into containers using a simple form</li><li>Turn your YAML into custom templates for easy reuse</li></ul><h2 data-renderer-start-pos=\"660\">About Portainer&nbsp;</h2><p data-renderer-start-pos=\"680\">Portainer is the worlds&rsquo; most popular universal container management platform with more than 650,000 active monthly users. Portainer can be used to manage Docker Standalone, Kubernetes and Docker Swarm environments through a single common interface. It includes a simple GitOps automation engine and a Kube API.&nbsp;</p><p data-renderer-start-pos=\"1006\">Portainer Business Edition is our fully supported commercial grade product for business-wide use. It includes all the functionality that businesses need to manage containers at scale. Visit <a class=\"sc-jKJlTe dPfAtb\" href=\"http://portainer.io/\" title=\"http://Portainer.io\" data-renderer-mark=\"true\">Portainer.io</a> to learn more about Portainer Business and <a class=\"sc-jKJlTe dPfAtb\" href=\"http://portainer.io/take-3?utm_campaign=DockerCon&amp;utm_source=Docker%20Desktop\" title=\"http://portainer.io/take-3?utm_campaign=DockerCon&amp;utm_source=Docker%20Desktop\" data-renderer-mark=\"true\">get 3 free nodes.</a></p>","org.opencontainers.image.title":"Portainer","com.docker.extension.screenshots":"[{\"alt\": \"screenshot one\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-1.png\"},{\"alt\": \"screenshot two\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-2.png\"},{\"alt\": \"screenshot three\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-3.png\"},{\"alt\": \"screenshot four\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-4.png\"},{\"alt\": \"screenshot five\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-5.png\"},{\"alt\": \"screenshot six\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-6.png\"},{\"alt\": \"screenshot seven\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-7.png\"},{\"alt\": \"screenshot eight\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-8.png\"},{\"alt\": \"screenshot nine\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-9.png\"}]","com.docker.desktop.extension.icon":"https://portainer-io-assets.sfo2.cdn.digitaloceanspaces.com/logos/portainer.png"},"State":"running","Status":"Up Less than a second","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"06:42:c2:96:56:b1","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"f18d752819efbd195063d857fd606f4c0552eab627541c1e0c307998c516df6b","Gateway":"192.168.97.1","IPAddress":"192.168.97.5","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"bind","Source":"/etc/localtime","Destination":"/usr/share/zoneinfo/Europe/Paris","Mode":"ro","RW":false,"Propagation":"rprivate"},{"Type":"bind","Source":"/var/run/docker.sock","Destination":"/var/run/docker.sock","Mode":"","RW":true,"Propagation":"rprivate"},{"Type":"volume","Name":"e-combox_portainer_portainer-data","Source":"/var/lib/docker/volumes/e-combox_portainer_portainer-data/_data","Destination":"/data","Driver":"local","Mode":"z","RW":true,"Propagation":""}]},{"Id":"cb144288b9d29e72286f30b2b28e7f0d3ff14c3fb1d25adcf78e7cea5d6c1d8a","Names":["/e-combox_gitserver"],"Image":"reseaucerta/git-http-server:4.4","ImageID":"sha256:cf368bb885ef76da9e3e07160de7f78266f38b8681441ac4ae99a80503ce0664","Command":"/entrypoint.sh","Created":1749707377,"Ports":[{"PrivatePort":443,"Type":"tcp"}],"Labels":{},"State":"running","Status":"Up 13 seconds","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"d2:c9:13:4e:f0:4f","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"83a25acfcfc90023846f2765c39b79564b0a4eb2632dc2b30e254e66b3108e8a","Gateway":"192.168.97.1","IPAddress":"192.168.97.7","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"volume","Name":"e-combox_git-data","Source":"/var/lib/docker/volumes/e-combox_git-data/_data","Destination":"/git","Driver":"local","Mode":"z","RW":true,"Propagation":""}]},{"Id":"3d49b4847d80924f72ff221c73a7277d03960e85eebe51f9879926ec4aedeeda","Names":["/e-combox_registry"],"Image":"reseaucerta/registry:4.4","ImageID":"sha256:91a1256e81dd01d85115f516e1b5e0dd0c5d8ff7957353f3888b521b716448c9","Command":"/entrypoint.sh /etc/docker/registry/config.yml","Created":1749707363,"Ports":[{"IP":"0.0.0.0","PrivatePort":443,"PublicPort":5443,"Type":"tcp"},{"IP":"::","PrivatePort":443,"PublicPort":5443,"Type":"tcp"},{"PrivatePort":5000,"Type":"tcp"}],"Labels":{},"State":"running","Status":"Up 28 seconds","HostConfig":{"NetworkMode":"bridge"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":{},"Links":null,"Aliases":null,"MacAddress":"36:f3:6e:14:ae:3a","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"51bb5ba7bf409b37a425ad6b466bfcf496e042716d2d35be2168c62a5c5106ef","Gateway":"192.168.97.1","IPAddress":"192.168.97.4","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"bind","Source":"/opt/e-combox/certs/registry","Destination":"/certs","Mode":"","RW":true,"Propagation":"rprivate"},{"Type":"volume","Name":"registry_data","Source":"/var/lib/docker/volumes/registry_data/_data","Destination":"/var/lib/registry","Driver":"local","Mode":"z","RW":true,"Propagation":""}]},{"Id":"59d377a83ba9986a8632e75e8608500084c2ea02c1b8dbd834c14bd20f485f24","Names":["/FSserver"],"Image":"alpine:latest","ImageID":"sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61","Command":"/bin/sh","Created":1749706033,"Ports":[],"Labels":{"com.docker.compose.depends_on":"","com.docker.compose.project":"fsserver","com.docker.compose.container-number":"1","com.docker.compose.project.working_dir":"/data/compose/1","com.docker.compose.project.config_files":"","com.docker.compose.config-hash":"9bdb82300697fc4862d6f8f2fdc950aea3f1072573eb75a04af6bd9f9769ca16","com.docker.compose.service":"FSserver","com.docker.compose.version":"","com.docker.compose.oneoff":"False","com.docker.compose.app":"ecombox-FSserver","com.docker.compose.image":"sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61"},"State":"running","Status":"Up 44 seconds","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"be:4c:f2:1f:e5:b8","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"64959ae23a09f73de0d341dcb348d84e58709349b21e5dfd0fa2cb5627cef03e","Gateway":"192.168.97.1","IPAddress":"192.168.97.8","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"volume","Name":"fsserver_data","Source":"/var/lib/docker/volumes/fsserver_data/_data","Destination":"/opt","Driver":"local","Mode":"z","RW":true,"Propagation":""}]},{"Id":"606e110665ade4f6bdd7a2e7b22897f1bb8ce2bdc470e3869d8e1a78793b0f50","Names":["/e-combox"],"Image":"reseaucerta/e-combox:4.4","ImageID":"sha256:469b054c9aea0e367b33ccc4f524ccb607faf1d7493834cd54dc35949d5963c1","Command":"/docker-entrypoint.sh nginx -g 'daemon off;'","Created":1749706018,"Ports":[{"IP":"0.0.0.0","PrivatePort":443,"PublicPort":32768,"Type":"tcp"},{"IP":"::","PrivatePort":443,"PublicPort":32768,"Type":"tcp"},{"PrivatePort":80,"Type":"tcp"}],"Labels":{"maintainer":"NGINX Docker Maintainers <docker-maint@nginx.com>"},"State":"running","Status":"Up 45 seconds","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"0a:06:67:73:cd:6f","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"1d075acbea26da9a10eee904b35b60ecd01f32dae44728a320a6b48a9bc63fc4","Gateway":"192.168.97.1","IPAddress":"192.168.97.3","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"volume","Name":"ecombox_config","Source":"/var/lib/docker/volumes/ecombox_config/_data","Destination":"/etc/ecombox-conf","Driver":"local","Mode":"z","RW":true,"Propagation":""},{"Type":"volume","Name":"ecombox_conf_nginx","Source":"/var/lib/docker/volumes/ecombox_conf_nginx/_data","Destination":"/etc/nginx/conf.d","Driver":"local","Mode":"z","RW":true,"Propagation":""},{"Type":"volume","Name":"ecombox_data","Source":"/var/lib/docker/volumes/ecombox_data/_data","Destination":"/usr/share/nginx/html","Driver":"local","Mode":"z","RW":true,"Propagation":""}]},{"Id":"db4d3fd89b978c1f686bb5b2485dc96d8f5a213e5c3c458295265c99ffc8e78c","Names":["/docker-gen"],"Image":"reseaucerta/docker-gen:4.4","ImageID":"sha256:ef0cfe4cd36c3444220c8dca9d538e6bdac8120abe99257528c65b8c771721ed","Command":"/usr/local/bin/docker-gen -notify-sighup nginx -watch -only-exposed -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf","Created":1749705966,"Ports":[],"Labels":{"org.opencontainers.image.title":"docker-gen","com.docker.compose.config-hash":"3d1401e84d4bd6060eef5c1551d5d435cfbdb16e443f756542b2f9594effa823","org.opencontainers.image.source":"https://github.com/nginx-proxy/docker-gen","org.opencontainers.image.revision":"473108c1486dffdb610d28fe322dfe26df3d166c","com.docker.compose.version":"2.36.2","org.opencontainers.image.authors":"Nicolas Duchon <nicolas.duchon@gmail.com> (@buchdag), Jason Wilder","com.docker.compose.project.working_dir":"/opt/e-combox/e-combox_reverseproxy","com.docker.compose.depends_on":"nginx:service_started:true","org.opencontainers.image.description":"Generate files from docker container meta-data","com.docker.compose.oneoff":"False","com.docker.compose.service":"nginx-docker_gen","com.docker.compose.image":"sha256:ef0cfe4cd36c3444220c8dca9d538e6bdac8120abe99257528c65b8c771721ed","org.opencontainers.image.licenses":"MIT","com.docker.compose.project":"e-combox_reverseproxy","org.opencontainers.image.created":"2025-04-21T00:19:30.599Z","com.docker.compose.project.config_files":"/opt/e-combox/e-combox_reverseproxy/docker-compose.yml","org.opencontainers.image.version":"0.14.6-4-g473108c","com.docker.compose.container-number":"1","org.opencontainers.image.url":"https://github.com/nginx-proxy/docker-gen"},"State":"running","Status":"Up 44 seconds","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"4e:6d:17:bc:c1:78","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"1493c8f6c205701802dc17578e22984ac5ff895feb8a6ee231001ab37c6c458e","Gateway":"192.168.97.1","IPAddress":"192.168.97.6","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"volume","Name":"e-combox_reverseproxy_nginx-html","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-html/_data","Destination":"/usr/share/nginx/html","Driver":"local","Mode":"","RW":true,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-docker-gen-templates","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-docker-gen-templates/_data","Destination":"/etc/docker-gen/templates","Driver":"local","Mode":"ro","RW":false,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-conf","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-conf/_data","Destination":"/etc/nginx/conf.d","Driver":"local","Mode":"","RW":true,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-ssl","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-ssl/_data","Destination":"/etc/ssl/ecombox","Driver":"local","Mode":"","RW":true,"Propagation":""},{"Type":"bind","Source":"/var/run/docker.sock","Destination":"/tmp/docker.sock","Mode":"ro","RW":false,"Propagation":"rprivate"}]},{"Id":"a8c31e36f262e4348f11363c61903b40fadedbc86453517be9b17bb1e0ecfbb2","Names":["/nginx"],"Image":"reseaucerta/nginx:4.4","ImageID":"sha256:0af66ad1e56efb7225cbc905052ea26786f1513830282d1fd0c4fe16775ae171","Command":"/docker-entrypoint.sh nginx -g 'daemon off;'","Created":1749705965,"Ports":[{"IP":"0.0.0.0","PrivatePort":443,"PublicPort":8800,"Type":"tcp"},{"IP":"::","PrivatePort":443,"PublicPort":8800,"Type":"tcp"},{"PrivatePort":80,"Type":"tcp"}],"Labels":{"com.docker.compose.config-hash":"2db05f3f722e2cc5f0ec702455de7d73d37239a35662a42707d2927346246d0c","com.docker.compose.project.config_files":"/opt/e-combox/e-combox_reverseproxy/docker-compose.yml","com.docker.compose.oneoff":"False","com.docker.compose.container-number":"1","com.docker.compose.depends_on":"","com.docker.compose.service":"nginx","io.portainer.accesscontrol.teams":"profs","com.docker.compose.image":"sha256:0af66ad1e56efb7225cbc905052ea26786f1513830282d1fd0c4fe16775ae171","com.docker.compose.project":"e-combox_reverseproxy","com.docker.compose.version":"2.36.2","com.docker.compose.project.working_dir":"/opt/e-combox/e-combox_reverseproxy","maintainer":"NGINX Docker Maintainers <docker-maint@nginx.com>"},"State":"running","Status":"Up 10 seconds","HostConfig":{"NetworkMode":"bridge_e-combox"},"NetworkSettings":{"Networks":{"bridge_e-combox":{"IPAMConfig":null,"Links":null,"Aliases":null,"MacAddress":"ea:a0:5e:04:2e:35","DriverOpts":null,"NetworkID":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","EndpointID":"67a49ca8535b748faf1def3fe0d4f583ef3c080dc050f5e218ccf8bd5bcfd8d1","Gateway":"192.168.97.1","IPAddress":"192.168.97.2","IPPrefixLen":24,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"DNSNames":null}}},"Mounts":[{"Type":"volume","Name":"e-combox_reverseproxy_nginx-html","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-html/_data","Destination":"/usr/share/nginx/html","Driver":"local","Mode":"rw","RW":true,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-docker-gen-templates","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-docker-gen-templates/_data","Destination":"/etc/docker-gen/templates","Driver":"local","Mode":"rw","RW":true,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-conf","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-conf/_data","Destination":"/etc/nginx/conf.d","Driver":"local","Mode":"rw","RW":true,"Propagation":""},{"Type":"volume","Name":"e-combox_reverseproxy_nginx-ssl","Source":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-ssl/_data","Destination":"/etc/ssl/ecombox","Driver":"local","Mode":"rw","RW":true,"Propagation":""}]}],"Volumes":{"Volumes":[{"CreatedAt":"2025-06-12T09:49:37+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/e-combox_git-data/_data","Name":"e-combox_git-data","Options":null,"Scope":"local"},{"CreatedAt":"2025-05-29T12:33:36+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/e-combox_portainer_portainer-data/_data","Name":"e-combox_portainer_portainer-data","Options":null,"Scope":"local"},{"CreatedAt":"2025-06-12T09:26:05+04:00","Driver":"local","Labels":{"com.docker.compose.project":"e-combox_reverseproxy","com.docker.compose.version":"2.36.2","com.docker.compose.volume":"nginx-html","com.docker.compose.config-hash":"cdab13af45f2743a941fe44b363bc9089a823838b5402f569efd4a525d3bbd73"},"Mountpoint":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-html/_data","Name":"e-combox_reverseproxy_nginx-html","Options":null,"Scope":"local"},{"CreatedAt":"2025-05-29T12:32:56+04:00","Driver":"local","Labels":{"com.docker.compose.project":"e-combox_reverseproxy","com.docker.compose.config-hash":"aa0afd7644f5f841c3b07bc9ab4a3bcc1e6ace9c87eb53de547e22d4a11b5566","com.docker.compose.volume":"nginx-ssl","com.docker.compose.version":"2.36.2"},"Mountpoint":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-ssl/_data","Name":"e-combox_reverseproxy_nginx-ssl","Options":null,"Scope":"local"},{"CreatedAt":"2025-06-12T09:26:59+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/ecombox_config/_data","Name":"ecombox_config","Options":null,"Scope":"local"},{"CreatedAt":"2025-05-29T12:32:56+04:00","Driver":"local","Labels":{"com.docker.compose.version":"2.36.2","com.docker.compose.config-hash":"0646a309ecb3979c5ecf1c1f9cbe26359aa98dea5a61450950f0a4e65c04bbc7","com.docker.compose.project":"e-combox_reverseproxy","com.docker.compose.volume":"nginx-conf"},"Mountpoint":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-conf/_data","Name":"e-combox_reverseproxy_nginx-conf","Options":null,"Scope":"local"},{"CreatedAt":"2025-06-12T09:26:05+04:00","Driver":"local","Labels":{"com.docker.compose.project":"e-combox_reverseproxy","com.docker.compose.version":"2.36.2","com.docker.compose.config-hash":"6b485d8ce0dca1809542034ce5981367aa9fad9d577bcd28eeb5e5828ece424a","com.docker.compose.volume":"nginx-docker-gen-templates"},"Mountpoint":"/var/lib/docker/volumes/e-combox_reverseproxy_nginx-docker-gen-templates/_data","Name":"e-combox_reverseproxy_nginx-docker-gen-templates","Options":null,"Scope":"local"},{"CreatedAt":"2025-06-12T09:26:58+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/ecombox_conf_nginx/_data","Name":"ecombox_conf_nginx","Options":null,"Scope":"local"},{"CreatedAt":"2025-06-12T09:26:59+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/ecombox_data/_data","Name":"ecombox_data","Options":null,"Scope":"local"},{"CreatedAt":"2025-05-29T12:34:17+04:00","Driver":"local","Labels":{"com.docker.compose.version":"","com.docker.compose.project":"fsserver","com.docker.compose.volume":"data"},"Mountpoint":"/var/lib/docker/volumes/fsserver_data/_data","Name":"fsserver_data","Options":null,"Scope":"local"},{"CreatedAt":"2025-05-29T12:33:12+04:00","Driver":"local","Labels":null,"Mountpoint":"/var/lib/docker/volumes/registry_data/_data","Name":"registry_data","Options":null,"Scope":"local"}],"Warnings":null},"Networks":[{"Name":"none","Id":"d255ca6828980a28ab5fa0eddfa1624cbccc588c7d9496d51ddf7bcbbd1bf0a6","Created":"2025-05-29T12:26:32.601779838+04:00","Scope":"local","Driver":"null","EnableIPv6":false,"IPAM":{"Driver":"default","Options":null,"Config":null},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{},"Options":{},"Labels":{}},{"Name":"bridge","Id":"f459d5e8e45561b5158ba4afeff10da2473b928214651aa4d3ca236e97a068de","Created":"2025-06-12T09:49:06.266982701+04:00","Scope":"local","Driver":"bridge","EnableIPv6":false,"IPAM":{"Driver":"default","Options":null,"Config":[{"Subnet":"172.17.0.0/16","Gateway":"172.17.0.1"}]},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{},"Options":{"com.docker.network.bridge.default_bridge":"true","com.docker.network.driver.mtu":"1500","com.docker.network.bridge.enable_icc":"true","com.docker.network.bridge.host_binding_ipv4":"0.0.0.0","com.docker.network.bridge.enable_ip_masquerade":"true","com.docker.network.bridge.name":"docker0"},"Labels":{}},{"Name":"host","Id":"a3ec623777b88e51118b986659417c70309df59cfa3cd40a98d43129cee98876","Created":"2025-05-29T12:26:32.615386194+04:00","Scope":"local","Driver":"host","EnableIPv6":false,"IPAM":{"Driver":"default","Options":null,"Config":null},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{},"Options":{},"Labels":{}},{"Name":"bridge_e-combox","Id":"ab45d6a68a32727e2bd04ff7d7c265e2120f9e7dabc49904f515a2c044b75089","Created":"2025-05-29T12:32:33.169241421+04:00","Scope":"local","Driver":"bridge","EnableIPv6":false,"IPAM":{"Driver":"default","Options":{},"Config":[{"Subnet":"192.168.97.0/24","Gateway":"192.168.97.1"}]},"Internal":false,"Attachable":false,"Ingress":false,"ConfigFrom":{"Network":""},"ConfigOnly":false,"Containers":{},"Options":{},"Labels":{}}],"Images":[{"Containers":-1,"Created":1748622041,"Id":"sha256:cea2ff433c610f5363017404ce989632e12b953114fefc6f597a58e813c15d61","Labels":null,"ParentId":"","RepoDigests":["alpine@sha256:8a1f59ffb675680d47db6337b49d22281a139e9d709335b492be023728e11715"],"RepoTags":["alpine:latest"],"SharedSize":-1,"Size":8309109},{"Containers":-1,"Created":1747052925,"Id":"sha256:cf368bb885ef76da9e3e07160de7f78266f38b8681441ac4ae99a80503ce0664","Labels":null,"ParentId":"","RepoDigests":["reseaucerta/git-http-server@sha256:26dc768171bd2208cadd79483bae9d6a32bb8e950a4f74be8f47c14c25e36848"],"RepoTags":["reseaucerta/git-http-server:4.4"],"SharedSize":-1,"Size":58076762},{"Containers":-1,"Created":1746293174,"Id":"sha256:469b054c9aea0e367b33ccc4f524ccb607faf1d7493834cd54dc35949d5963c1","Labels":{"maintainer":"NGINX Docker Maintainers <docker-maint@nginx.com>"},"ParentId":"","RepoDigests":["reseaucerta/e-combox@sha256:918c6963c85b1edc5bc6c5ec78ed9d5c4e675937f36e2a21191596c3b75311d9"],"RepoTags":["reseaucerta/e-combox:4.4"],"SharedSize":-1,"Size":289225174},{"Containers":-1,"Created":1745009344,"Id":"sha256:ef0cfe4cd36c3444220c8dca9d538e6bdac8120abe99257528c65b8c771721ed","Labels":{"org.opencontainers.image.created":"2025-04-21T00:19:30.599Z","org.opencontainers.image.title":"docker-gen","org.opencontainers.image.authors":"Nicolas Duchon <nicolas.duchon@gmail.com> (@buchdag), Jason Wilder","org.opencontainers.image.source":"https://github.com/nginx-proxy/docker-gen","com.docker.compose.project":"nginx-reverseproxy","org.opencontainers.image.description":"Generate files from docker container meta-data","org.opencontainers.image.revision":"473108c1486dffdb610d28fe322dfe26df3d166c","com.docker.compose.service":"nginx-docker_gen","org.opencontainers.image.url":"https://github.com/nginx-proxy/docker-gen","org.opencontainers.image.licenses":"MIT","org.opencontainers.image.version":"0.14.6-4-g473108c","com.docker.compose.version":"2.34.0"},"ParentId":"","RepoDigests":["reseaucerta/docker-gen@sha256:c5f4d93c5df250258bab1148cb67a424734f13d7bc384a243f3264aa1753b460"],"RepoTags":["reseaucerta/docker-gen:4.4"],"SharedSize":-1,"Size":26165084},{"Containers":-1,"Created":1744995192,"Id":"sha256:0af66ad1e56efb7225cbc905052ea26786f1513830282d1fd0c4fe16775ae171","Labels":{"com.docker.compose.version":"2.34.0","com.docker.compose.service":"nginx","maintainer":"NGINX Docker Maintainers <docker-maint@nginx.com>","com.docker.compose.project":"nginx-reverseproxy"},"ParentId":"","RepoDigests":["reseaucerta/nginx@sha256:5a3b1bf7da82b4b44e895ad0a9833f68b839df7038042f6143527f4d6287ecf4"],"RepoTags":["reseaucerta/nginx:4.4"],"SharedSize":-1,"Size":243316890},{"Containers":-1,"Created":1744672233,"Id":"sha256:30d09e5cd7971815bd277ab897bd254a5c8222971be4b00e1f0bc8f301d50890","Labels":{"io.portainer.server":"true","org.opencontainers.image.title":"Portainer","com.docker.extension.detailed-description":"<p data-renderer-start-pos=\"226\">Portainer&rsquo;s Docker Desktop extension gives you access to all of Portainer&rsquo;s rich management functionality within your docker desktop experience.</p><h2 data-renderer-start-pos=\"374\">With Portainer you can:</h2><ul><li>See all your running containers</li><li>Easily view all of your container logs</li><li>Console into containers</li><li>Easily deploy your code into containers using a simple form</li><li>Turn your YAML into custom templates for easy reuse</li></ul><h2 data-renderer-start-pos=\"660\">About Portainer&nbsp;</h2><p data-renderer-start-pos=\"680\">Portainer is the worlds&rsquo; most popular universal container management platform with more than 650,000 active monthly users. Portainer can be used to manage Docker Standalone, Kubernetes and Docker Swarm environments through a single common interface. It includes a simple GitOps automation engine and a Kube API.&nbsp;</p><p data-renderer-start-pos=\"1006\">Portainer Business Edition is our fully supported commercial grade product for business-wide use. It includes all the functionality that businesses need to manage containers at scale. Visit <a class=\"sc-jKJlTe dPfAtb\" href=\"http://portainer.io/\" title=\"http://Portainer.io\" data-renderer-mark=\"true\">Portainer.io</a> to learn more about Portainer Business and <a class=\"sc-jKJlTe dPfAtb\" href=\"http://portainer.io/take-3?utm_campaign=DockerCon&amp;utm_source=Docker%20Desktop\" title=\"http://portainer.io/take-3?utm_campaign=DockerCon&amp;utm_source=Docker%20Desktop\" data-renderer-mark=\"true\">get 3 free nodes.</a></p>","com.docker.extension.publisher-url":"https://www.portainer.io","org.opencontainers.image.description":"Docker container management made simple, with the world’s most popular GUI-based container management platform.","com.docker.desktop.extension.api.version":">= 0.2.2","com.docker.extension.screenshots":"[{\"alt\": \"screenshot one\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-1.png\"},{\"alt\": \"screenshot two\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-2.png\"},{\"alt\": \"screenshot three\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-3.png\"},{\"alt\": \"screenshot four\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-4.png\"},{\"alt\": \"screenshot five\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-5.png\"},{\"alt\": \"screenshot six\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-6.png\"},{\"alt\": \"screenshot seven\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-7.png\"},{\"alt\": \"screenshot eight\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-8.png\"},{\"alt\": \"screenshot nine\", \"url\": \"https://portainer-io-assets.sfo2.digitaloceanspaces.com/screenshots/docker-extension-9.png\"}]","org.opencontainers.image.vendor":"Portainer.io","com.docker.desktop.extension.icon":"https://portainer-io-assets.sfo2.cdn.digitaloceanspaces.com/logos/portainer.png","com.docker.extension.additional-urls":"[{\"title\":\"Website\",\"url\":\"https://www.portainer.io?utm_campaign=DockerCon&utm_source=DockerDesktop\"},{\"title\":\"Documentation\",\"url\":\"https://docs.portainer.io\"},{\"title\":\"Support\",\"url\":\"https://join.slack.com/t/portainer/shared_invite/zt-txh3ljab-52QHTyjCqbe5RibC2lcjKA\"}]"},"ParentId":"","RepoDigests":["portainer/portainer-ce@sha256:449202d765d28ec443c1657fc1121aff92b8afcee6b58bcea36e1f0e81e8297c"],"RepoTags":["portainer/portainer-ce:2.27.4"],"SharedSize":-1,"Size":268151535},{"Containers":-1,"Created":1729697212,"Id":"sha256:91a1256e81dd01d85115f516e1b5e0dd0c5d8ff7957353f3888b521b716448c9","Labels":null,"ParentId":"","RepoDigests":["reseaucerta/registry@sha256:4fe893b692b67b7e0fc098319932539158701ec7667301af19379a8f9eb1f513"],"RepoTags":["reseaucerta/registry:4.4"],"SharedSize":-1,"Size":42461487}],"Info":{"ID":"c3cece7d-75d8-47d4-9f73-2ce41467e098","Containers":7,"ContainersRunning":7,"ContainersPaused":0,"ContainersStopped":0,"Images":7,"Driver":"overlay2","DriverStatus":[["Backing Filesystem","extfs"],["Supports d_type","true"],["Using metacopy","false"],["Native Overlay Diff","true"],["userxattr","false"]],"Plugins":{"Volume":["local"],"Network":["bridge","host","ipvlan","macvlan","null","overlay"],"Authorization":null,"Log":["awslogs","fluentd","gcplogs","gelf","journald","json-file","local","splunk","syslog"]},"MemoryLimit":true,"SwapLimit":true,"CpuCfsPeriod":true,"CpuCfsQuota":true,"CPUShares":true,"CPUSet":true,"PidsLimit":true,"IPv4Forwarding":true,"BridgeNfIptables":false,"BridgeNfIp6tables":false,"Debug":false,"NFd":92,"OomKillDisable":false,"NGoroutines":99,"SystemTime":"2025-06-12T09:49:51.660588584+04:00","LoggingDriver":"json-file","CgroupDriver":"systemd","CgroupVersion":"2","NEventsListener":1,"KernelVersion":"6.1.0-37-amd64","OperatingSystem":"Debian GNU/Linux 12 (bookworm)","OSVersion":"12","OSType":"linux","Architecture":"x86_64","IndexServerAddress":"https://index.docker.io/v1/","RegistryConfig":{"AllowNondistributableArtifactsCIDRs":null,"AllowNondistributableArtifactsHostnames":null,"InsecureRegistryCIDRs":["::1/128","127.0.0.0/8"],"IndexConfigs":{"docker.io":{"Name":"docker.io","Mirrors":[],"Secure":true,"Official":true}},"Mirrors":null},"NCPU":1,"MemTotal":16770265088,"GenericResources":null,"DockerRootDir":"/var/lib/docker","HttpProxy":"http://172.16.160.1:3128","HttpsProxy":"http://172.16.160.1:3128","NoProxy":"","Name":"debecombox","Labels":[],"ExperimentalBuild":false,"ServerVersion":"28.2.2","Runtimes":{"io.containerd.runc.v2":{"path":"runc","status":{"org.opencontainers.runtime-spec.features":"{\"ociVersionMin\":\"1.0.0\",\"ociVersionMax\":\"1.2.0\",\"hooks\":[\"prestart\",\"createRuntime\",\"createContainer\",\"startContainer\",\"poststart\",\"poststop\"],\"mountOptions\":[\"async\",\"atime\",\"bind\",\"defaults\",\"dev\",\"diratime\",\"dirsync\",\"exec\",\"iversion\",\"lazytime\",\"loud\",\"mand\",\"noatime\",\"nodev\",\"nodiratime\",\"noexec\",\"noiversion\",\"nolazytime\",\"nomand\",\"norelatime\",\"nostrictatime\",\"nosuid\",\"nosymfollow\",\"private\",\"ratime\",\"rbind\",\"rdev\",\"rdiratime\",\"relatime\",\"remount\",\"rexec\",\"rnoatime\",\"rnodev\",\"rnodiratime\",\"rnoexec\",\"rnorelatime\",\"rnostrictatime\",\"rnosuid\",\"rnosymfollow\",\"ro\",\"rprivate\",\"rrelatime\",\"rro\",\"rrw\",\"rshared\",\"rslave\",\"rstrictatime\",\"rsuid\",\"rsymfollow\",\"runbindable\",\"rw\",\"shared\",\"silent\",\"slave\",\"strictatime\",\"suid\",\"symfollow\",\"sync\",\"tmpcopyup\",\"unbindable\"],\"linux\":{\"namespaces\":[\"cgroup\",\"ipc\",\"mount\",\"network\",\"pid\",\"time\",\"user\",\"uts\"],\"capabilities\":[\"CAP_CHOWN\",\"CAP_DAC_OVERRIDE\",\"CAP_DAC_READ_SEARCH\",\"CAP_FOWNER\",\"CAP_FSETID\",\"CAP_KILL\",\"CAP_SETGID\",\"CAP_SETUID\",\"CAP_SETPCAP\",\"CAP_LINUX_IMMUTABLE\",\"CAP_NET_BIND_SERVICE\",\"CAP_NET_BROADCAST\",\"CAP_NET_ADMIN\",\"CAP_NET_RAW\",\"CAP_IPC_LOCK\",\"CAP_IPC_OWNER\",\"CAP_SYS_MODULE\",\"CAP_SYS_RAWIO\",\"CAP_SYS_CHROOT\",\"CAP_SYS_PTRACE\",\"CAP_SYS_PACCT\",\"CAP_SYS_ADMIN\",\"CAP_SYS_BOOT\",\"CAP_SYS_NICE\",\"CAP_SYS_RESOURCE\",\"CAP_SYS_TIME\",\"CAP_SYS_TTY_CONFIG\",\"CAP_MKNOD\",\"CAP_LEASE\",\"CAP_AUDIT_WRITE\",\"CAP_AUDIT_CONTROL\",\"CAP_SETFCAP\",\"CAP_MAC_OVERRIDE\",\"CAP_MAC_ADMIN\",\"CAP_SYSLOG\",\"CAP_WAKE_ALARM\",\"CAP_BLOCK_SUSPEND\",\"CAP_AUDIT_READ\",\"CAP_PERFMON\",\"CAP_BPF\",\"CAP_CHECKPOINT_RESTORE\"],\"cgroup\":{\"v1\":true,\"v2\":true,\"systemd\":true,\"systemdUser\":true,\"rdma\":true},\"seccomp\":{\"enabled\":true,\"actions\":[\"SCMP_ACT_ALLOW\",\"SCMP_ACT_ERRNO\",\"SCMP_ACT_KILL\",\"SCMP_ACT_KILL_PROCESS\",\"SCMP_ACT_KILL_THREAD\",\"SCMP_ACT_LOG\",\"SCMP_ACT_NOTIFY\",\"SCMP_ACT_TRACE\",\"SCMP_ACT_TRAP\"],\"operators\":[\"SCMP_CMP_EQ\",\"SCMP_CMP_GE\",\"SCMP_CMP_GT\",\"SCMP_CMP_LE\",\"SCMP_CMP_LT\",\"SCMP_CMP_MASKED_EQ\",\"SCMP_CMP_NE\"],\"archs\":[\"SCMP_ARCH_AARCH64\",\"SCMP_ARCH_ARM\",\"SCMP_ARCH_MIPS\",\"SCMP_ARCH_MIPS64\",\"SCMP_ARCH_MIPS64N32\",\"SCMP_ARCH_MIPSEL\",\"SCMP_ARCH_MIPSEL64\",\"SCMP_ARCH_MIPSEL64N32\",\"SCMP_ARCH_PPC\",\"SCMP_ARCH_PPC64\",\"SCMP_ARCH_PPC64LE\",\"SCMP_ARCH_RISCV64\",\"SCMP_ARCH_S390\",\"SCMP_ARCH_S390X\",\"SCMP_ARCH_X32\",\"SCMP_ARCH_X86\",\"SCMP_ARCH_X86_64\"],\"knownFlags\":[\"SECCOMP_FILTER_FLAG_TSYNC\",\"SECCOMP_FILTER_FLAG_SPEC_ALLOW\",\"SECCOMP_FILTER_FLAG_LOG\"],\"supportedFlags\":[\"SECCOMP_FILTER_FLAG_TSYNC\",\"SECCOMP_FILTER_FLAG_SPEC_ALLOW\",\"SECCOMP_FILTER_FLAG_LOG\"]},\"apparmor\":{\"enabled\":true},\"selinux\":{\"enabled\":true},\"intelRdt\":{\"enabled\":true},\"mountExtensions\":{\"idmap\":{\"enabled\":true}}},\"annotations\":{\"io.github.seccomp.libseccomp.version\":\"2.5.4\",\"org.opencontainers.runc.checkpoint.enabled\":\"true\",\"org.opencontainers.runc.commit\":\"v1.2.5-0-g59923ef\",\"org.opencontainers.runc.version\":\"1.2.5\"},\"potentiallyUnsafeConfigAnnotations\":[\"bundle\",\"org.systemd.property.\",\"org.criu.config\"]}"}},"runc":{"path":"runc","status":{"org.opencontainers.runtime-spec.features":"{\"ociVersionMin\":\"1.0.0\",\"ociVersionMax\":\"1.2.0\",\"hooks\":[\"prestart\",\"createRuntime\",\"createContainer\",\"startContainer\",\"poststart\",\"poststop\"],\"mountOptions\":[\"async\",\"atime\",\"bind\",\"defaults\",\"dev\",\"diratime\",\"dirsync\",\"exec\",\"iversion\",\"lazytime\",\"loud\",\"mand\",\"noatime\",\"nodev\",\"nodiratime\",\"noexec\",\"noiversion\",\"nolazytime\",\"nomand\",\"norelatime\",\"nostrictatime\",\"nosuid\",\"nosymfollow\",\"private\",\"ratime\",\"rbind\",\"rdev\",\"rdiratime\",\"relatime\",\"remount\",\"rexec\",\"rnoatime\",\"rnodev\",\"rnodiratime\",\"rnoexec\",\"rnorelatime\",\"rnostrictatime\",\"rnosuid\",\"rnosymfollow\",\"ro\",\"rprivate\",\"rrelatime\",\"rro\",\"rrw\",\"rshared\",\"rslave\",\"rstrictatime\",\"rsuid\",\"rsymfollow\",\"runbindable\",\"rw\",\"shared\",\"silent\",\"slave\",\"strictatime\",\"suid\",\"symfollow\",\"sync\",\"tmpcopyup\",\"unbindable\"],\"linux\":{\"namespaces\":[\"cgroup\",\"ipc\",\"mount\",\"network\",\"pid\",\"time\",\"user\",\"uts\"],\"capabilities\":[\"CAP_CHOWN\",\"CAP_DAC_OVERRIDE\",\"CAP_DAC_READ_SEARCH\",\"CAP_FOWNER\",\"CAP_FSETID\",\"CAP_KILL\",\"CAP_SETGID\",\"CAP_SETUID\",\"CAP_SETPCAP\",\"CAP_LINUX_IMMUTABLE\",\"CAP_NET_BIND_SERVICE\",\"CAP_NET_BROADCAST\",\"CAP_NET_ADMIN\",\"CAP_NET_RAW\",\"CAP_IPC_LOCK\",\"CAP_IPC_OWNER\",\"CAP_SYS_MODULE\",\"CAP_SYS_RAWIO\",\"CAP_SYS_CHROOT\",\"CAP_SYS_PTRACE\",\"CAP_SYS_PACCT\",\"CAP_SYS_ADMIN\",\"CAP_SYS_BOOT\",\"CAP_SYS_NICE\",\"CAP_SYS_RESOURCE\",\"CAP_SYS_TIME\",\"CAP_SYS_TTY_CONFIG\",\"CAP_MKNOD\",\"CAP_LEASE\",\"CAP_AUDIT_WRITE\",\"CAP_AUDIT_CONTROL\",\"CAP_SETFCAP\",\"CAP_MAC_OVERRIDE\",\"CAP_MAC_ADMIN\",\"CAP_SYSLOG\",\"CAP_WAKE_ALARM\",\"CAP_BLOCK_SUSPEND\",\"CAP_AUDIT_READ\",\"CAP_PERFMON\",\"CAP_BPF\",\"CAP_CHECKPOINT_RESTORE\"],\"cgroup\":{\"v1\":true,\"v2\":true,\"systemd\":true,\"systemdUser\":true,\"rdma\":true},\"seccomp\":{\"enabled\":true,\"actions\":[\"SCMP_ACT_ALLOW\",\"SCMP_ACT_ERRNO\",\"SCMP_ACT_KILL\",\"SCMP_ACT_KILL_PROCESS\",\"SCMP_ACT_KILL_THREAD\",\"SCMP_ACT_LOG\",\"SCMP_ACT_NOTIFY\",\"SCMP_ACT_TRACE\",\"SCMP_ACT_TRAP\"],\"operators\":[\"SCMP_CMP_EQ\",\"SCMP_CMP_GE\",\"SCMP_CMP_GT\",\"SCMP_CMP_LE\",\"SCMP_CMP_LT\",\"SCMP_CMP_MASKED_EQ\",\"SCMP_CMP_NE\"],\"archs\":[\"SCMP_ARCH_AARCH64\",\"SCMP_ARCH_ARM\",\"SCMP_ARCH_MIPS\",\"SCMP_ARCH_MIPS64\",\"SCMP_ARCH_MIPS64N32\",\"SCMP_ARCH_MIPSEL\",\"SCMP_ARCH_MIPSEL64\",\"SCMP_ARCH_MIPSEL64N32\",\"SCMP_ARCH_PPC\",\"SCMP_ARCH_PPC64\",\"SCMP_ARCH_PPC64LE\",\"SCMP_ARCH_RISCV64\",\"SCMP_ARCH_S390\",\"SCMP_ARCH_S390X\",\"SCMP_ARCH_X32\",\"SCMP_ARCH_X86\",\"SCMP_ARCH_X86_64\"],\"knownFlags\":[\"SECCOMP_FILTER_FLAG_TSYNC\",\"SECCOMP_FILTER_FLAG_SPEC_ALLOW\",\"SECCOMP_FILTER_FLAG_LOG\"],\"supportedFlags\":[\"SECCOMP_FILTER_FLAG_TSYNC\",\"SECCOMP_FILTER_FLAG_SPEC_ALLOW\",\"SECCOMP_FILTER_FLAG_LOG\"]},\"apparmor\":{\"enabled\":true},\"selinux\":{\"enabled\":true},\"intelRdt\":{\"enabled\":true},\"mountExtensions\":{\"idmap\":{\"enabled\":true}}},\"annotations\":{\"io.github.seccomp.libseccomp.version\":\"2.5.4\",\"org.opencontainers.runc.checkpoint.enabled\":\"true\",\"org.opencontainers.runc.commit\":\"v1.2.5-0-g59923ef\",\"org.opencontainers.runc.version\":\"1.2.5\"},\"potentiallyUnsafeConfigAnnotations\":[\"bundle\",\"org.systemd.property.\",\"org.criu.config\"]}"}}},"DefaultRuntime":"runc","Swarm":{"NodeID":"","NodeAddr":"","LocalNodeState":"inactive","ControlAvailable":false,"Error":"","RemoteManagers":null},"LiveRestoreEnabled":false,"Isolation":"","InitBinary":"docker-init","ContainerdCommit":{"ID":"05044ec0a9a75232cad458027ca83437aae3f4da","Expected":"05044ec0a9a75232cad458027ca83437aae3f4da"},"RuncCommit":{"ID":"v1.2.5-0-g59923ef","Expected":"v1.2.5-0-g59923ef"},"InitCommit":{"ID":"de40ad0","Expected":"de40ad0"},"SecurityOptions":["name=apparmor","name=seccomp,profile=builtin","name=cgroupns"],"CDISpecDirs":["/etc/cdi","/var/run/cdi"],"Containerd":{"Address":"/run/containerd/containerd.sock","Namespaces":{"Containers":"moby","Plugins":"plugins.moby"}},"Warnings":null},"Version":{"Platform":{"Name":"Docker Engine - Community"},"Components":[{"Name":"Engine","Version":"28.2.2","Details":{"MinAPIVersion":"1.24","GitCommit":"45873be","KernelVersion":"6.1.0-37-amd64","Os":"linux","GoVersion":"go1.24.3","Experimental":"false","ApiVersion":"1.50","Arch":"amd64","BuildTime":"2025-05-30T12:07:26.000000000+00:00"}},{"Name":"containerd","Version":"1.7.27","Details":{"GitCommit":"05044ec0a9a75232cad458027ca83437aae3f4da"}},{"Name":"runc","Version":"1.2.5","Details":{"GitCommit":"v1.2.5-0-g59923ef"}},{"Name":"docker-init","Version":"0.19.0","Details":{"GitCommit":"de40ad0"}}],"Version":"28.2.2","ApiVersion":"1.50","MinAPIVersion":"1.24","GitCommit":"45873be","GoVersion":"go1.24.3","Os":"linux","Arch":"amd64","KernelVersion":"6.1.0-37-amd64","BuildTime":"2025-05-30T12:07:26.000000000+00:00"}},"NodeCount":0,"GpuUseAll":false,"GpuUseList":[],"IsPodman":false,"DiagnosticsData":null}],"UserAccessPolicies":{},"TeamAccessPolicies":{"1":{"RoleId":0}},"EdgeKey":"","EdgeCheckinInterval":0,"Kubernetes":{"Snapshots":[],"Configuration":{"UseLoadBalancer":false,"UseServerMetrics":false,"EnableResourceOverCommit":true,"ResourceOverCommitPercentage":0,"StorageClasses":[],"IngressClasses":[],"RestrictDefaultNamespace":false,"IngressAvailabilityPerNamespace":false,"AllowNoneIngressClass":false},"Flags":{"IsServerMetricsDetected":false,"IsServerIngressClassDetected":false,"IsServerStorageDetected":false}},"ComposeSyntaxMaxVersion":"","SecuritySettings":{"allowBindMountsForRegularUsers":true,"allowPrivilegedModeForRegularUsers":true,"allowVolumeBrowserForRegularUsers":false,"allowHostNamespaceForRegularUsers":true,"allowDeviceMappingForRegularUsers":true,"allowStackManagementForRegularUsers":true,"allowContainerCapabilitiesForRegularUsers":true,"allowSysctlSettingForRegularUsers":true,"enableHostManagementFeatures":false},"LastCheckInDate":0,"QueryDate":0,"Heartbeat":false,"PostInitMigrations":{"MigrateIngresses":false,"MigrateGPUs":false},"Edge":{"AsyncMode":false,"PingInterval":0,"SnapshotInterval":0,"CommandInterval":0},"Agent":{"Version":""},"AuthorizedUsers":null,"AuthorizedTeams":null,"Tags":null}

Retour ID_CONTENEUR_NGINX : a8c31e36f262e4348f11363c61903b40fadedbc86453517be9b17bb1e0ecfbb2

Retour MAJ_RESTRICTION_NGINX : {"Id":7,"ResourceId":"a8c31e36f262e4348f11363c61903b40fadedbc86453517be9b17bb1e0ecfbb2","SubResourceIds":[],"Type":1,"UserAccesses":[],"TeamAccesses":[{"TeamId":1,"AccessLevel":1}],"Public":false,"AdministratorsOnly":false,"System":false}

Retour AJOUT_RESTRICTION_REGISTRY : {"Id":8,"ResourceId":"3d49b4847d80924f72ff221c73a7277d03960e85eebe51f9879926ec4aedeeda","SubResourceIds":null,"Type":1,"UserAccesses":[],"TeamAccesses":[{"TeamId":1,"AccessLevel":1}],"Public":false,"AdministratorsOnly":false,"System":false}

Retour ID_RESTRICTION_REGISTRY: 
Ajout des permissions
Gestion du stack FSserver pour les mentions légales
Le stack FSserver pour les mentions légales a déjà été créé.
Le stack FSserver est démarré.
Retour MAJ_RESTRICTION_FSSERVER : {"Id":3,"ResourceId":"1_fsserver","SubResourceIds":[],"Type":6,"UserAccesses":[],"TeamAccesses":[{"TeamId":1,"AccessLevel":1}],"Public":false,"AdministratorsOnly":false,"System":false}
Pas d'alimentation des mentions légales.
Déconnexion Docker Hub forcée demandée.

Téléchargement des scripts utiles... Fait
Restriction des droits du dossier /opt/e-combox... Fait

Retour MODIF_SETTINGS_PORTAINER : {"Id":1,"Name":"primary","Type":1,"ContainerEngine":"","URL":"unix:///var/run/docker.sock","GroupId":1,"PublicURL":"","Gpus":null,"TLSConfig":{"TLS":false,"TLSSkipVerify":false},"AzureCredentials":{"ApplicationID":"","TenantID":"","AuthenticationKey":""},"TagIds":[],"Status":1,"Snapshots":[],"UserAccessPolicies":{},"TeamAccessPolicies":{"1":{"RoleId":0}},"EdgeKey":"","EdgeCheckinInterval":0,"Kubernetes":{"Snapshots":[],"Configuration":{"UseLoadBalancer":false,"UseServerMetrics":false,"EnableResourceOverCommit":true,"ResourceOverCommitPercentage":0,"StorageClasses":[],"IngressClasses":[],"RestrictDefaultNamespace":false,"IngressAvailabilityPerNamespace":false,"AllowNoneIngressClass":false},"Flags":{"IsServerMetricsDetected":false,"IsServerIngressClassDetected":false,"IsServerStorageDetected":false}},"ComposeSyntaxMaxVersion":"","SecuritySettings":{"allowBindMountsForRegularUsers":true,"allowPrivilegedModeForRegularUsers":true,"allowVolumeBrowserForRegularUsers":false,"allowHostNamespaceForRegularUsers":true,"allowDeviceMappingForRegularUsers":true,"allowStackManagementForRegularUsers":true,"allowContainerCapabilitiesForRegularUsers":true,"allowSysctlSettingForRegularUsers":true,"enableHostManagementFeatures":false},"LastCheckInDate":0,"QueryDate":0,"Heartbeat":false,"PostInitMigrations":{"MigrateIngresses":false,"MigrateGPUs":false},"Edge":{"AsyncMode":false,"PingInterval":0,"SnapshotInterval":0,"CommandInterval":0},"Agent":{"Version":""},"AuthorizedUsers":null,"AuthorizedTeams":null,"Tags":null}
Test mdp par défaut de portainer : {"message":"Invalid credentials","details":"Unauthorized"}

Tentative de connexion à l'API...
Connexion à l'API de Portainer... Succès

Configuration de la méthode d'authentification sur l'authentification interne : {"LogoURL":"","BlackListedLabels":[],"AuthenticationMethod":1,"InternalAuthSettings":{"RequiredPasswordLength":12},"LDAPSettings":{"AnonymousMode":true,"ReaderDN":"","URL":"","TLSConfig":{"TLS":false,"TLSSkipVerify":false},"StartTLS":false,"SearchSettings":[{"BaseDN":"","Filter":"","UserNameAttribute":""}],"GroupSearchSettings":[{"GroupBaseDN":"","GroupFilter":"","GroupAttribute":""}],"AutoCreateUsers":true},"OAuthSettings":{"ClientID":"","AccessTokenURI":"","AuthorizationURI":"","ResourceURI":"","RedirectURI":"","UserIdentifier":"","Scopes":"","OAuthAutoCreateUsers":false,"DefaultTeamID":0,"SSO":true,"LogoutURI":"","KubeSecretKey":null,"AuthStyle":0},"openAMTConfiguration":{"enabled":false,"mpsServer":"","mpsUser":"","mpsPassword":"","mpsToken":"","certFileName":"","certFileContent":"","certFilePassword":"","domainName":""},"FeatureFlagSettings":null,"SnapshotInterval":"5m","TemplatesURL":"","GlobalDeploymentOptions":{"hideStacksFunctionality":false},"EdgeAgentCheckinInterval":5,"EnableEdgeComputeFeatures":false,"UserSessionTimeout":"8h","KubeconfigExpiry":"0","EnableTelemetry":false,"HelmRepositoryURL":"","KubectlShellImage":"portainer/kubectl-shell:2.27.4","TrustOnFirstConnect":false,"EnforceEdgeID":false,"AgentSecret":"","EdgePortainerUrl":"","Edge":{"CommandInterval":0,"PingInterval":0,"SnapshotInterval":0}}

Installation terminée
Application e-comBox : https://172.16.160.25:8800/app/
Portainer : https://172.16.160.25:8800/portainer/
Les sites : https://172.16.160.25:8800/nom_du_site/

Vous pouvez accéder à l'interface d'e-comBox via le compte admin de Portainer mais une bonne pratique consiste à créer, sur Portainer, au moins un compte dans le groupe "Profs" puis accéder à l'interface d'e-comBox avec les identifiants de ce dernier.
ecombox-2.log (61,138 bytes)   

aporaf

2025-06-12 20:33

administrator   ~0001336

Bonsoir,

Vous avez bien "N" dans la variable du reverseproxy et vous ne passez pas par un reverseproxy externe donc tout va bien de ce côté.

Sinon, je pense avoir trouvé le souci dans votre configuration. Dans le param.conf, il faut obligatoirement renseigner le paramètre NO_PROXY avec les valeurs suivantes dans votre cas : "172.16.160.*,127.0.0.1". Il est, en effet, nécessaire d'exclure dans la configuration du proxy sur le système et sur Docker l'adresse de bouclage, le réseau dans lequel est le serveur d'ecomBox et le réseau dans lequel se trouve le proxy.

Il faut ensuite relancer le script de configuration.

Si cela ne fonctionne toujours pas, il nous faut les nouveaux logs (/var/og/ecombox.log) y compris les logs de la console (et non les copies d'écran du site inaccessible). Sur Firefox (ou sur Chrome), avant, par exemple, de recharger la page de l'interface :

  • faire un "clic-droit", puis "inspecter",
  • cliquer sur console,
  • recharger la page de l'interface,
  • copier/coller le résultat (via un copier/coller dans un fichier plus une capture d'écran).

Cordialement,

Pascal

2025-06-13 02:45

reporter   ~0001337

Je test ça lundi, et je vous tiens au courant.

Merci pour le temps que vous m'accordez!

Issue History

Date Modified Username Field Change
2025-06-11 03:18 Pascal New Issue
2025-06-11 08:44 aporaf Assigned To => aporaf
2025-06-11 08:44 aporaf Status new => feedback
2025-06-11 08:44 aporaf Note Added: 0001330
2025-06-11 16:49 Pascal Note Added: 0001331
2025-06-11 16:49 Pascal Status feedback => assigned
2025-06-11 17:37 aporaf Note Added: 0001332
2025-06-12 15:28 Pascal Note Added: 0001335
2025-06-12 15:28 Pascal File Added: ecombox-2.log
2025-06-12 15:28 Pascal File Added: Capture d'écran ecombox innaccessible FF-2.png
2025-06-12 15:28 Pascal File Added: Capture d'écran ecombox innaccessible-2.png
2025-06-12 20:33 aporaf Note Added: 0001336
2025-06-13 02:45 Pascal Note Added: 0001337