Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| fr:install_khaganat_web [2018/06/16 09:49] – créée zatalyz | fr:install_khaganat_web [2021/12/03 18:19] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 13: | Ligne 13: | ||
| - | Pour plus de détails sur le projet, voir la page [[: | + | Pour plus de détails sur le projet, voir la page [[fr: |
| - | Cet article détaille comment installer et paramétrer le site web. | + | Cet article détaille comment installer et paramétrer le site web (la version " |
| - | ===== Dépendances | + | ===== Installation |
| - | Django se base sur python. Votre serveur doit donc avoir les paquets python 3 et pipenv (ce qui va simplifier la suite). En cas de souci, voir [[fr: | + | Django se base sur python. Votre serveur doit donc avoir les paquets python 3 et pipenv (ce qui va simplifier la suite). En cas de souci, voir [[fr: |
| + | Sur debian, installez aussi gettext : | ||
| + | sudo apt install gettext | ||
| + | |||
| + | Configurer pipenv pour utiliser python 3 par défaut : | ||
| + | pipenv --three | ||
| + | |||
| + | Commencez par cloner le projet : | ||
| + | git clone https:// | ||
| + | cd khaganat-web | ||
| + | |||
| + | Puis modifier les variables d' | ||
| + | nano .env | ||
| + | |||
| + | Adaptez le fichier avec les paramètres suivants. Les deux variables KHAGANAT_SECRET_KEY, | ||
| + | < | ||
| + | # KHAGANAT_SECRET_KEY (required)='' | ||
| + | KHAGANAT_SECRET_KEY='' | ||
| + | # KHAGANAT_DEBUG='' | ||
| + | KHAGANAT_DEBUG=' | ||
| + | # KHAGANAT_HOSTNAMES='' | ||
| + | KHAGANAT_HOSTNAMES='' | ||
| + | # KHAGANAT_LANGUAGE_CODE='' | ||
| + | # KHAGANAT_TIME_ZONE='' | ||
| + | # KHAGANAT_STATIC_URL='' | ||
| + | # KHAGANAT_STATIC_ROOT='' | ||
| + | # KHAGANAT_STATIC_DIRS='' | ||
| + | # KHAGANAT_LOGS_MIN_DAYS='' | ||
| + | # KHAGANAT_LOGS_MAX_DAYS='' | ||
| + | # KHAGANAT_LOGIN_REDIRECT_URL='' | ||
| + | # KHAGANAT_REGISTER_REQUIRE_VALIDATION='' | ||
| + | # KHAGANAT_EMAIL_HOST='' | ||
| + | # KHAGANAT_EMAIL_PORT='' | ||
| + | # KHAGANAT_EMAIL_HOST_USER='' | ||
| + | # KHAGANAT_EMAIL_HOST_PASSWORD='' | ||
| + | # KHAGANAT_EMAIL_USE_STARTTLS='' | ||
| + | # KHAGANAT_EMAIL_USE_TLS='' | ||
| + | # KHAGANAT_EMAIL_SUBJECT_PREFIX='' | ||
| + | # KHAGANAT_DEFAULT_FROM_EMAIL='' | ||
| + | # KHAGANAT_FORCE_HTTPS='' | ||
| + | # KHAGANAT_HTTPS_HEADER_NAME='' | ||
| + | # KHAGANAT_HTTPS_HEADER_VALUE='' | ||
| + | # KHAGANAT_NSFW_TAGS='' | ||
| + | # KHAGANAT_NSFW_NAME='' | ||
| + | </ | ||
| + | |||
| + | |||
| + | Ensuite, mettez l' | ||
| + | pipenv --three update | ||
| + | |||
| + | Puis lancer la construction du site. Si vous copiez la base de donnée d'une autre installation (par exemple de la version test vers la prod), oubliez les lignes '' | ||
| + | < | ||
| + | pipenv run ./manage.py compilemessages | ||
| + | pipenv run ./manage.py createsuperuser | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Collecter les static ou non ==== | ||
| + | |||
| + | Le script collectstatic concerne les véritables déploiements, | ||
| + | |||
| + | Lancez ensuite la commande suivante : | ||
| + | pipenv run ./manage.py collectstatic --clear --noinput | ||
| + | |||
| + | ==== Le serveur web ==== | ||
| + | |||
| + | Avant d' | ||
| + | <WRAP center round todo 60%> | ||
| + | Ce qui suit est à travailler/ | ||
| + | </ | ||
| + | |||
| + | Dans le cas d'un déploiement en mode développement (pas de la production !) on va utiliser un utilitaire fourni avec Django, appelé " | ||
| + | pipenv run ./manage.py runserver 0:8000 | ||
| + | * 0 permet qu'on y accède même si ce n'est pas sur le réseau local (par défaut, c'est localhost) | ||
| + | * 8000 est le port utilisé, qu'on peut changer | ||
| + | * Pensez à lancer le runserver dans un shell à part, c'est un serveur donc il ne s' | ||
| + | |||
| + | L' | ||
| + | |||
| + | |||
| + | <WRAP center round info 90%> | ||
| + | Si comme nous, vous êtes derrière un proxy, il faudra modifier sur la config du proxy afin que cela point vers le port de votre VM. | ||
| + | |||
| + | Sur la VM du proxy, config apache (''/ | ||
| + | < | ||
| + | ProxyPass / http:// | ||
| + | ProxyPassReverse / http:// | ||
| + | ProxyRequests off | ||
| + | ProxyPreserveHost on | ||
| + | <Proxy *> | ||
| + | Options FollowSymLinks MultiViews | ||
| + | AllowOverride All | ||
| + | Order allow,deny | ||
| + | allow from all | ||
| + | </ | ||
| + | |||
| + | [...]</ | ||
| + | Et sur la VM où Django est installé : | ||
| + | < | ||
| + | ProxyRequests off | ||
| + | ProxyPreserveHost on | ||
| + | |||
| + | | ||
| + | < | ||
| + | ProxyPassReverse http:// | ||
| + | Require all granted | ||
| + | </ | ||
| + | |||
| + | [...]</ | ||
| + | |||
| + | Ensuite la commande suivante fonctionnera : | ||
| + | pipenv run ./manage.py runserver 0:8000 | ||
| + | </ | ||
| + | Je déconseille de pointer ailleurs qu'à la racine, à moins de savoir changer les comportements de Django. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | Le readme se base sur nginx. Il faudrait adapter à Debian, à notre installation avec proxy/ | ||
| + | |||
| + | Paquets à installer sous Debian. | ||
| + | sudo apt install nginx-extras uwsgi uwsgi-plugin-python3 | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Premier lancement ==== | ||
| + | |||
| + | Au premier lancement, il n'y a pas de page créé sur la racine du site, ce qui fait peur (pleins d' | ||
| + | |||
| + | Il suffit de se rendre à l' | ||
| + | |||
| + | |||
| + | ==== Récupérer le détail de Khaganat ==== | ||
| + | <WRAP center round todo 60%> | ||
| + | Pour le moment, ce n'est pas sur un dépôt public. | ||
| + | |||
| + | Suffit de copier la base de donnée : | ||
| + | scp cipra.khaganat.net:/ | ||
| + | </ | ||
| + | |||
| + | ==== Yakalfr lié : faire le css ==== | ||
| + | [[taf> | ||
| + | |||
| + | ===== Astuces et trucs utiles ===== | ||
| + | ==== Exporter la navbar ==== | ||
| + | Pour exporter la navbar, afin de l' | ||
| + | < | ||
| + | cd / | ||
| + | pipenv run ./manage.py navbar_export --lang fr --docuwiki | ||
| + | </ | ||
| + | |||
| + | Le résultat sera dans '' | ||
| + | |||
| + | pour lister toutes les option d' | ||
| + | pipenv run ./manage.py navbar_export -h | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| {{tag> | {{tag> | ||





