Merrick28 / seedbox-docker

Une seedbox prête à lancer, avec docker-compose
https://merrick28.github.io/seedbox-docker/
GNU General Public License v3.0
20 stars 10 forks source link

Impossible d'accéder au dashboard (et à portainer) #6

Closed memento closed 4 years ago

memento commented 4 years ago

Salut !

Je n'arrive pas à accéder à l'URL admin : https://ADMIN_URL (je précise que le certificat est bon). Note : Je n'ai jamais pu y accéder mais ça ne me dérangeait pas plus que ça avant. Quand j'essaye d'y accéder via n'importe quel navigateur, j'ai un

This page isn’t workingadmin.mondomaine.com redirected you too many times. Try clearing your cookies. ERR_TOO_MANY_REDIRECTS

Je précise que j'ai autorisé les cookies pour ce site. J'ai tout débloqué en fait.

Côté serveur, quand j'affiche les logs du service portainer via docker-compose, j'ai une information intéressante :

$ docker-compose logs portainer
WARNING: The BASE_URL variable is not set. Defaulting to a blank string.
WARNING: The ADMIN_URL variable is not set. Defaulting to a blank string.
WARNING: The MAIL_ADDRESS variable is not set. Defaulting to a blank string.
WARNING: The CONFIG_DIR variable is not set. Defaulting to a blank string.
WARNING: The passwd_admin variable is not set. Defaulting to a blank string.
WARNING: The DATA_DIR variable is not set. Defaulting to a blank string.
Attaching to seedbox-docker_portainer_1
portainer_1   | 2019/12/25 20:01:51 Templates already registered inside the database. Skipping template import.
portainer_1   | 2019/12/25 20:01:51 server: Reverse tunnelling enabled
portainer_1   | 2019/12/25 20:01:51 server: Fingerprint c5:5e:f1:89:7e:5b:4c:fe:3e:8e:c2:91:c2:4e:c9:5a
portainer_1   | 2019/12/25 20:01:51 server: Listening on 0.0.0.0:8000...
portainer_1   | 2019/12/25 20:01:51 Starting Portainer 1.23.0 on :9000
portainer_1   | 2019/12/25 20:01:51 [DEBUG] [chisel, monitoring] [check_interval_seconds: 10.000000] [message: starting tunnel management process]
portainer_1   | 2019/12/25 20:06:52 No administrator account was created after 5 min. Shutting down the Portainer instance for security reasons.

J'ai pourtant suivi la procédure et j'ai rentré les information en console concernant le compte administrateur. Quelqu'un peut-il m'aider ?

memento commented 4 years ago

Quand je faisais un restart de la seedbox, j'avais des conteneurs orphelins. J'ai donc fait dans l'ordre (dans le répertoire de seedbox qui contient tous les *.yml), un

./seedbox --stop

Puis un :

docker-compose down --remove-orphans

Par contre, toujours pas de dashboard.

memento commented 4 years ago

Note : Par rapport à tous ces WARNINGs sur l'absence des variables d’environnement, je précise qu'elles sont bien settées dans le fichier vars à l'image de ce qui est fait dans vars-default.

memento commented 4 years ago

Par rapport à ce compte admin inexistant, quand je fais un :

cat passwd

J'ai bien un compte admin en première ligne

memento commented 4 years ago

OK, j'ai fait un restart de la seedbox à nouveau et je me suis précipité sur https://admin.mondomaine.com/portainer avant le délai de 5 minutes au delà duquel à défaut d'avoir un compte admin configuré (ce qui est pourtant le cas), le service portainer se coupe et j'ai ceci :

Portainer Loading Portainer...

Voici la capture

Et rien ne se passe.

Voici le tail de log de portainer auquel j'ai accès :

docker-compose logs portainer
WARNING: The BASE_URL variable is not set. Defaulting to a blank string.
WARNING: The ADMIN_URL variable is not set. Defaulting to a blank string.
WARNING: The MAIL_ADDRESS variable is not set. Defaulting to a blank string.
WARNING: The CONFIG_DIR variable is not set. Defaulting to a blank string.
WARNING: The passwd_admin variable is not set. Defaulting to a blank string.
WARNING: The DATA_DIR variable is not set. Defaulting to a blank string.
Attaching to seedbox-docker_portainer_1
portainer_1   | 2019/12/25 22:01:49 Templates already registered inside the database. Skipping template import.
portainer_1   | 2019/12/25 22:01:49 server: Reverse tunnelling enabled
portainer_1   | 2019/12/25 22:01:49 server: Fingerprint c5:5e:f1:89:7e:5b:4c:fe:3e:8e:c2:91:c2:4e:c9:5a
portainer_1   | 2019/12/25 22:01:49 server: Listening on 0.0.0.0:8000...
portainer_1   | 2019/12/25 22:01:49 Starting Portainer 1.23.0 on :9000
portainer_1   | 2019/12/25 22:01:49 [DEBUG] [chisel, monitoring] [check_interval_seconds: 10.000000] [message: starting tunnel management process]
memento commented 4 years ago

J'ai enlevé la ligne concernant l'admin dans le fichier de mots de passes : passwd

J'ai lancé le script ./seedbox.sh

Le script m'a affiché :

Vous n'avez pas encore de compte administrateur pour cette seedbox
Il faut en créer un pour pouvoir continuer.
Saisissez le mot de passe du compte :

J'ai donc tapé mon mot de passe.

Le script a recréé les images etc et il m'a enfin affiché :

Le compte admin a été créé.
Vous devez maintenant vous connecter sur https://admin.mondomaine.com/portainer et choisir un mot de passe pour sécuriser la partie portainer

Je me suis rendu illico sur la page et je suis directement tombé sur un mini "formulaire" htaccess me demandant login et mot de passe. J'ai alors mis "admin" et le mot de passe que j'ai choisi pour l'admin mais rien n'y fait. Il me redemande le mot de passe comme s'il était erroné. Je précise que pour mes tests, le mot de passe n'a rien d'exotique.

Quelqu'un a une idée ?

Merrick28 commented 4 years ago

Il y a bien un problème avec les variables. Tu peux poster ton vars ? Il faudrait aussi les logs de traefik (via un paste in, ca risque d'être gros...)

memento commented 4 years ago

Salut ! Merci de ta réponse.

Voici mon vars. J'ai juste changé mon nom de domaine par mondomaine.com ainsi que l'adresse email.

Quelque chose te saute aux yeux ?

######################################
# DEFINITION DES VARIABLES
# ====================================
# Url de base
# Les sites seront accessibles par
# https://BASE_URL/xxx
export BASE_URL=user.mondomaine.com
# URL pour Traefik
export ADMIN_URL=admin.mondomaine.com
# Fichier de password
export PASSWD_FILE=./passwd
# Adresse mail de contact
# (pour les certificats letsencrypt)
export MAIL_ADDRESS=monmail@gmail.com
# Dossier de configuration
# Va recevoir la configuration de la seedbox
# Concerne la configuration globale (hors utilisateur)
export CONFIG_DIR=/home/seedocker/config-seedbox
# Dossier utilisateurs
# Chaque utilisateur aura un dossier sous ce dossier
export DATA_DIR=/home/seedocker/data-seedbox

Note : la seedbox est lancée par l'utilisateur seedocker qui a le privilège sudo et qui fait bien partie du groupe docker :

sudo usermod -aG docker seedocker
memento commented 4 years ago

Les logs traefik crachent énormément. Quels sont les mots clefs que tu chercherais ?

memento commented 4 years ago

Note : Sur ce servuer, j'ai également deux autres petits wikis (wikijs conteneurisés: https://github.com/Requarks/wiki) écoutant les requêtes https sur respectivement les ports :

Chacun embarque son conteneur mongodb respectivement sur 27017 et 27018 (normalement, c'est en vase clos mais je préfère le citer tout de même)

Je ne sais pas si ça peut poser problème.

Merrick28 commented 4 years ago

Au lieu du docker-compose logs, il faudrait faire un docker logs, on éliminera déjà ce problème de variable. Pour le reste, il faut que je me monte une VM pour retester, je n'utilise plus ce projet...

Sinon, de mémoire, essaie de rajouter un "/" à la fin de l'url (https://admin.mondomaine.com/portainer/ au lieu de https://admin.mondomaine.com/portainer ), il me semble que j'avais eu un souci là dessus.

memento commented 4 years ago

Merci ! Je vais attendre que mes utilisateurs aient terminé avec le ftp et je testerai ça. Après, j'ai essayé le "/" à la fin sans refaire la procédure du compte admin et je peux déjà dire que je ne suis plus bloqué par la htaccess, donc ça sent très bon.

memento commented 4 years ago

Yes ! ça marche. Merci Steph. C'était juste ce "/" qui manquait à la fin. Pour ceux qui prennent le fil en route, si vous avez déjà votre installation, il suffit de supprimer la ligne du compte admin dans le fichier passwd et lancer le script :

./seedbox.sh

Après vous avoir demandé de créer un compte admin, on vous demandes de vous rendre à une certaine URL dans les 5 minutes. Noubliez pas d'ajouter un "/" à la fin de l'URL sinon, le htaccess ne vous laissera pas passer. Pour ceux qui ne connaissent pas, c'est le petit formulaire avec login password.

Merrick28 commented 4 years ago

OK, merci pour l'info, je cloture