Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| linux_weblate [2019/12/10 14:49] – [Prérequis] nekan | linux_weblate [2021/03/05 16:27] (Version actuelle) – nekan | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ~CLOSETOC~~ | ||
| ====== Weblate - Outil de traduction collaboratif ====== | ====== Weblate - Outil de traduction collaboratif ====== | ||
| + | <label type=" | ||
| Weblate (pour " | Weblate (pour " | ||
| Ligne 6: | Ligne 6: | ||
| * Référence : [[https:// | * Référence : [[https:// | ||
| - | <note warning>Cette procédure nécessite des droits '' | + | <callout type=" |
| - | <note>Cette procédure a été réalisé sur une débian 9.8</note> | + | <callout type=" |
| ===== Prérequis ===== | ===== Prérequis ===== | ||
| Ligne 15: | Ligne 15: | ||
| * 2 Go de RAM | * 2 Go de RAM | ||
| * 2 coeurs niveau CPU | * 2 coeurs niveau CPU | ||
| - | * 1 GO d' | + | * 1 Go d' |
| On commencera par installer les paquets nécessaires pour démarrer l' | On commencera par installer les paquets nécessaires pour démarrer l' | ||
| Ligne 25: | Ligne 25: | ||
| apt-get -y install docker-ce docker-compose</ | apt-get -y install docker-ce docker-compose</ | ||
| - | <note important> | + | <callout type=" |
| ===== Installation ===== | ===== Installation ===== | ||
| Ligne 39: | Ligne 39: | ||
| * Dans ce fichier, de type YAML, on va y ajouter les informations personnalisées suivantes : | * Dans ce fichier, de type YAML, on va y ajouter les informations personnalisées suivantes : | ||
| - | * **ports** : indique en premier le port d' | + | * **ports** : indique en premier le port d' |
| * **WEBLATE_EMAIL_HOST** : indique le serveur SMTP pour les notifications de weblate. | * **WEBLATE_EMAIL_HOST** : indique le serveur SMTP pour les notifications de weblate. | ||
| * **WEBLATE_EMAIL_HOST_USER** : en cas d' | * **WEBLATE_EMAIL_HOST_USER** : en cas d' | ||
| Ligne 48: | Ligne 48: | ||
| * **WEBLATE_ADMIN_PASSWORD** : indique le mot de passe de l' | * **WEBLATE_ADMIN_PASSWORD** : indique le mot de passe de l' | ||
| * **WEBLATE_ADMIN_EMAIL** : indique l' | * **WEBLATE_ADMIN_EMAIL** : indique l' | ||
| + | * **WEBLATE_REQUIRE_LOGIN** : définie à 1, cette directive permet de forcer les utilisateurs à se connecter et interdit la navigation anonyme. | ||
| * Cela donne un fichier de ce style : | * Cela donne un fichier de ce style : | ||
| <sxh yaml> | <sxh yaml> | ||
| Ligne 54: | Ligne 55: | ||
| ports: | ports: | ||
| - 80:8080 | - 80:8080 | ||
| + | - 443:4443 | ||
| environment: | environment: | ||
| WEBLATE_EMAIL_HOST: | WEBLATE_EMAIL_HOST: | ||
| Ligne 63: | Ligne 65: | ||
| WEBLATE_ADMIN_PASSWORD: | WEBLATE_ADMIN_PASSWORD: | ||
| WEBLATE_ADMIN_EMAIL: | WEBLATE_ADMIN_EMAIL: | ||
| + | WEBLATE_REQUIRE_LOGIN: | ||
| </ | </ | ||
| + | * Pour pouvoir utiliser le protocole HTTPS, il faut disposer d'un certificat. Pour l' | ||
| + | * Référence : [[snakeoil|Créer un certificat auto-signé]] | ||
| + | * Référence : [[crt2pem|Convertir un certificat CRT et PEM]] | ||
| + | * On crée dans le volume du docker (pour moi, il se trouve dans ''/ | ||
| + | * On copie dans ce dossier, le certificat sous le nom '' | ||
| - | {{:underconstruction-copy-300x150.jpg?400|}} | + | <callout type=" |
| + | |||
| + | * On construit le docker : | ||
| + | <sxh bash> | ||
| + | |||
| + | * Il nous reste plus qu'à lancer le déploiement de weblate via la commande : | ||
| + | <sxh bash> | ||
| + | |||
| + | * Le système va désormais télécharger les composant de weblate et monter le conteneur. | ||
| + | * Une fois terminée, le site est accessible via l'url indiqué dans **WEBLATE_ALLOWED_HOSTS**. Cette url devra bien sûr avoir été préalablement renseignée dans le DNS ou le fichier hosts. | ||
| + | |||
| + | <image shape=" | ||
| + | |||
| + | <callout type=" | ||
| + | |||
| + | ===== Restriction d' | ||
| + | |||
| + | Tel quel, weblate est accessible via une adresse IP et n' | ||
| + | |||
| + | Une bonne solution est de limiter l' | ||
| + | |||
| + | Pour celà, on va apporter quelques modifications à la configuration de weblate (fichier '' | ||
| + | <sxh yaml> | ||
| + | services: | ||
| + | weblate: | ||
| + | ports: | ||
| + | | ||
| + | - 127.0.0.1: | ||
| + | environment: | ||
| + | WEBLATE_EMAIL_HOST: | ||
| + | WEBLATE_EMAIL_HOST_USER: | ||
| + | WEBLATE_EMAIL_HOST_PASSWORD: | ||
| + | WEBLATE_SERVER_EMAIL: | ||
| + | WEBLATE_DEFAULT_FROM_EMAIL: | ||
| + | WEBLATE_ALLOWED_HOSTS: | ||
| + | WEBLATE_ADMIN_PASSWORD: | ||
| + | WEBLATE_ADMIN_EMAIL: | ||
| + | WEBLATE_REQUIRE_LOGIN: | ||
| + | </ | ||
| + | |||
| + | Avec cette configuration, | ||
| + | |||
| + | * On installe les paquets nécessaires : | ||
| + | |||
| + | <sxh bash> | ||
| + | ap-get install apache2</ | ||
| + | |||
| + | * On active les modules nécessaires : | ||
| + | |||
| + | <sxh bash> | ||
| + | |||
| + | * On crée le fichier de configuration correspondant à notre site : | ||
| + | |||
| + | <sxh bash> | ||
| + | |||
| + | * On ajoute la configuration suivante à notre fichier : | ||
| + | |||
| + | <sxh bash>< | ||
| + | < | ||
| + | ServerAdmin | ||
| + | ServerName | ||
| + | |||
| + | < | ||
| + | AuthName | ||
| + | AuthType | ||
| + | AuthUserFile | ||
| + | Require | ||
| + | </ | ||
| + | |||
| + | SSLEngine | ||
| + | SSLCertificateFile | ||
| + | SSLCertificateKeyFile | ||
| + | |||
| + | ProxyPreserveHost | ||
| + | ProxyRequests | ||
| + | ProxyPass | ||
| + | ProxyPassReverse | ||
| + | SSLProxyEngine | ||
| + | SSLProxyVerify | ||
| + | SSLProxyCheckPeerCN | ||
| + | SSLProxyCheckPeerName | ||
| + | SSLProxyCheckPeerExpire Off | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | |||
| + | * On crée le fichier htpasswd.weblate (remplacez '' | ||
| + | |||
| + | <sxh bash> | ||
| + | |||
| + | * On active le site et on recharge le service apache : | ||
| + | |||
| + | <sxh bash> | ||
| + | service apache2 reload</ | ||
| + | |||
| + | Désormais, en appelant le site weblate, il nous faudra d' | ||
| + | <image shape=" | ||
| + | |||
| + | ~~DISCUSSION~~ | ||