Open ghost opened 1 year ago
Quel est le problème ? Quelle est l'erreur retournée ? Dans quel contexte ?
update au dessus, c'est aussi la première fois que je pose une question :)
Si l'application est sur un serveur, il faut faire une configuration Apache pour servir l'application.
Par ailleurs en production on n'utilise pas flask run
qui lance un serveur de développement, mais gunicorn.
Avez vous lancez le script install_app.sh
qui est censé faire tout ça
D'accord, Normalement oui, Je suis dans mon dossier /home/"utilisateur"/Trombi
Je fais bash install_app.sh
ca défile mais avec des "ligne 16 commande introuvable" pour exemple.
Ducoup je pense que le script ne s'exécute pas en entier.
N'hésitez à envoyer le retour complet de la commande install_app.sh
pour qu'on puisse chercher ce qui pose soucis.
root@debian:/home/romain/Trombi# bash install_app.sh mkdir: impossible de créer le répertoire « var »: Le fichier existe mkdir: impossible de créer le répertoire « var/log »: Le fichier existe mkdir: impossible de créer le répertoire « ldaptrombipy/static/images »: Le fich ier existe install_app.sh: ligne 6: sudo : commande introuvable /home/romain/Trombi/install_app.sh Requirement already satisfied: virtualenv in /usr/local/lib/python3.9/dist-packa ges (20.17.1) Requirement already satisfied: filelock<4,>=3.4.1 in /usr/local/lib/python3.9/di st-packages (from virtualenv) (3.9.0) Requirement already satisfied: distlib<1,>=0.3.6 in /usr/local/lib/python3.9/dis t-packages (from virtualenv) (0.3.6) Requirement already satisfied: platformdirs<3,>=2.4 in /usr/local/lib/python3.9/ dist-packages (from virtualenv) (2.6.2) created virtual environment CPython3.9.2.final.0-64 in 714ms creator CPython3Posix(dest=/home/romain/Trombi/venv, clear=False, no_vcs_ignor e=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle , via=copy, app_data_dir=/root/.local/share/virtualenv) added seed packages: Flask==2.0.1, Flask_Cors==3.0.10, Jinja2==3.0.1, Markup Safe==2.0.1, TatSu==5.8.3, Werkzeug==2.0.1, arrow==0.14.7, caldav==0.8.0, certif i==2021.5.30, charset_normalizer==2.0.3, click==8.0.1, gunicorn==20.1.0, ics==0. 7, idna==3.2, itsdangerous==2.0.1, ldap3==2.9.1, lxml==4.6.3, pip==22.3.1, pyasn 1==0.4.8, python_dateutil==2.8.2, python_dotenv==0.18.0, requests==2.26.0, setup tools==65.6.3, six==1.16.0, urllib3==1.26.6, vobject==0.9.6.1, wheel==0.38.4 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerS hellActivator,PythonActivator Requirement already satisfied: arrow==0.14.7 in ./venv/lib/python3.9/site-packag es (from -r requirements.txt (line 1)) (0.14.7) Requirement already satisfied: caldav==0.8.0 in ./venv/lib/python3.9/site-packag es (from -r requirements.txt (line 2)) (0.8.0) Requirement already satisfied: certifi==2021.5.30 in ./venv/lib/python3.9/site-p ackages (from -r requirements.txt (line 3)) (2021.5.30) Requirement already satisfied: charset-normalizer==2.0.3 in ./venv/lib/python3.9 /site-packages (from -r requirements.txt (line 4)) (2.0.3) Requirement already satisfied: click==8.0.1 in ./venv/lib/python3.9/site-package s (from -r requirements.txt (line 5)) (8.0.1) Requirement already satisfied: Flask==2.0.1 in ./venv/lib/python3.9/site-package s (from -r requirements.txt (line 6)) (2.0.1) Requirement already satisfied: Flask-Cors==3.0.10 in ./venv/lib/python3.9/site-p ackages (from -r requirements.txt (line 7)) (3.0.10) Requirement already satisfied: gunicorn==20.1.0 in ./venv/lib/python3.9/site-pac kages (from -r requirements.txt (line 8)) (20.1.0) Requirement already satisfied: ics==0.7 in ./venv/lib/python3.9/site-packages (f rom -r requirements.txt (line 9)) (0.7) Requirement already satisfied: idna==3.2 in ./venv/lib/python3.9/site-packages ( from -r requirements.txt (line 10)) (3.2) Requirement already satisfied: itsdangerous==2.0.1 in ./venv/lib/python3.9/site- packages (from -r requirements.txt (line 11)) (2.0.1) Requirement already satisfied: Jinja2==3.0.1 in ./venv/lib/python3.9/site-packag es (from -r requirements.txt (line 12)) (3.0.1) Requirement already satisfied: ldap3==2.9.1 in ./venv/lib/python3.9/site-package s (from -r requirements.txt (line 13)) (2.9.1) Requirement already satisfied: lxml==4.6.3 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 14)) (4.6.3) Requirement already satisfied: MarkupSafe==2.0.1 in ./venv/lib/python3.9/site-pa ckages (from -r requirements.txt (line 15)) (2.0.1) Requirement already satisfied: pyasn1==0.4.8 in ./venv/lib/python3.9/site-packag es (from -r requirements.txt (line 16)) (0.4.8) Requirement already satisfied: python-dateutil==2.8.2 in ./venv/lib/python3.9/si te-packages (from -r requirements.txt (line 17)) (2.8.2) Requirement already satisfied: python-dotenv==0.18.0 in ./venv/lib/python3.9/sit e-packages (from -r requirements.txt (line 18)) (0.18.0) Requirement already satisfied: requests==2.26.0 in ./venv/lib/python3.9/site-pac kages (from -r requirements.txt (line 19)) (2.26.0) Requirement already satisfied: six==1.16.0 in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 20)) (1.16.0) Requirement already satisfied: TatSu in ./venv/lib/python3.9/site-packages (from -r requirements.txt (line 21)) (5.8.3) Requirement already satisfied: urllib3==1.26.6 in ./venv/lib/python3.9/site-pack ages (from -r requirements.txt (line 22)) (1.26.6) Requirement already satisfied: vobject==0.9.6.1 in ./venv/lib/python3.9/site-pac kages (from -r requirements.txt (line 23)) (0.9.6.1) Requirement already satisfied: Werkzeug==2.0.1 in ./venv/lib/python3.9/site-pack ages (from -r requirements.txt (line 24)) (2.0.1) Requirement already satisfied: setuptools>=3.0 in ./venv/lib/python3.9/site-pack ages (from gunicorn==20.1.0->-r requirements.txt (line 8)) (65.6.3) install_app.sh: ligne 16: sudo : commande introuvable install_app.sh: ligne 17: sudo : commande introuvable install_app.sh: ligne 19: sudo : commande introuvable install_app.sh: ligne 20: sudo : commande introuvable
sudo
n'est pas installé sur le serveur .
Il faut l'installer : apt install sudo
et ajouter l'utilisateur courant dans le groupe sudo
: https://phoenixnap.com/kb/how-to-create-sudo-user-on-ubuntu
Avec quel utilisateur lancez vous le script ?
Ok, je viens de faire la manip. Le script c'est lancé normalement.
Est-ce que on peut déjà avoir un aperçu ? La partie configuration apache est en "enable".
Je dois faire la config backend. C'est actuellement un test sur une vm pour voir pour le déployer plus tard.
est ce que l'application est accessible sur votre IP ? Oui ensuite il faut faire la config backend. Et bien redémarer le service systemd après modif
Il me refuse la connexion j'ai fait un telnet "adresseip" 5006. "Connection refused"
l'appli doit être accessible sur l'IP de la machine sans le port 5006. Le port 5006 est simplement utilisé en local et apache fait proxy entre les deux
Elle n'est pas accessible via l'adresse j'arrive sur la page d'accueil apache. Pour servir l'application je dois faire un LAMP ou juste la configuration de apache. Si vous avez un lien pour le faire j'en serais très reconnaissant.
Pardon, l'application est disponible sur IP/trombi
, je vais le spécifier dans la doc.
Rien de plus à faire niveau serveur HTTP !
J'ai du foiré quelque part. Quand je met monIP/Trombi (dossier dans /home/romain/Trombi). Je tombe sur
The requested URL was not found on this server.
Apache/2.4.54 (Debian) Server at 192.168.1.14 Port 80
La doc n'est vraiment pas complète et je n'ai pas regardé attentivement le script d'installation :
la conf apache n'est pas faite dans le install_app.sh
.
Le fichier https://github.com/PnEcrins/Trombi/blob/main/cong_apache.template donne un exemple de configuration à mettre dans : /etc/apache2/sites-available/trombi.conf
en remplaçant les chemins par ceux ou est votre application.
Ensuite :
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2ensite trombo
sudo apachectl restart
Yes super, j'ai accès au site. J'ai toujours pas le visuel de mes utilisateurs ? pour ca je dois lancer le backend et frontend. C'est compliqué à installer le NVM ?
NVM n'est pas à installer. Il ne faut pas que vous regardiez la rubrique DEVELOPPEMENT de la doc (https://github.com/PnEcrins/Trombi#d%C3%A9veloppement) qui est pour les développeurs de l'application.
C'est quoi le visuel des utilisateurs ? Vous avez connecté l'application avec votre LDAP pour récupérer les infos de vos utilisateurs ?
C'est surement la variable : BASE_QUERY
du config.py
qui est adapté pour effectuer les bon filtres sur le LDAP (il est fourni avec un exemple de notre structure à modfier)
Mon fichier config.py ressemble à ca :
API_PORT = 5006
# LDAP CONFIG
SERVER = "192.168.1.10"
PORT = 389
# SERVER = "ldap://192.168.1.10"
DN = "projet.dom"
PASSWORD = "Pa$$word"
EXCLUDED_GROUPS = [""]
BASE_QUERY=""
# CALDAV CONFIG
CALDAV_SERVER = ""
CALDAV_USERNAME = ""
CALDAV_PASSWORD = ""
J'ai mes utilisateurs dans un dossier "unité d'organisation".
La du coup ça relève de la bonne config du DN et du BASE_QUERY. Je ne suis vraiment pas un expert LDAP et j'ai trouvé notre config de manière assez empirique. Vous pouvez essayé de faire des requêtes LDAP avec la lib python ldap, ça peut aider pour débugger https://pypi.org/project/python-ldap/
Sinon vous pouvez ouvrir le debugger du navigateur, dans l'onglet "network" ou "réseaux" vous verrez les appels HTTP qui sont fait sur l'API. S'il y a des erreurs 500, le problème vient peut être d'autre part et il faut consulter les logs (dans sudo journalctl -u trombi
normalement). Si il y a que des code 200, c'est que les filtres ne sont pas bon
Vous avez pu solutionner votre problème de configuration ?
PS : Une version 1.2.0 vient de sortir.
Bonjour,
J'essaye actuellement d'installer votre Trombi sur un serveur debian mais quand je suis à l'étape "flask run" et que j'essaye d'y accéder soit via le 127.0.0.1 soit par l'adresse ip sur le port 5006 de mon serveur, il me refuse la connexion. J'ai bien accès au apache. Dans le fichier de conf ldap, j'ai mis l'adresse de mon ad, dans "MY_DN", j'ai mis mon nom de domaine et dans "password", j'ai mis le MDP du compte admin.
Je vous remercie, C'est la première fois que j'installe depuis github. Et je vous félicite pour votre application.
Cordialement