Déployer Cyberwatch derrière un proxy avec Swarm (Recommandé)

Cette page indique les étapes supplémentaires nécessaires à l’installation de Cyberwatch derrière un Proxy.

Configuration et test du proxy pour l’utilisateur local

Avant d’effectuer des modifications dans la configuration de docker, configurer le proxy pour l’utilisateur local :

export HTTP_PROXY=http://proxy.example.com:80/
export HTTPS_PROXY=http://proxy.example.com:80/

Puis valider le fonctionnement avec l’une de ces deux commandes :

curl -i https://harbor.cyberwatch.fr
wget -O- https://harbor.cyberwatch.fr

En vérifiant que le retour est bien 200 OK

Configuration de Docker

Créer le répertoire /etc/systemd/system/docker.service.d

mkdir -p /etc/systemd/system/docker.service.d

Se rendre dans ce répertoire et créer les fichiers http-proxy.conf et https-proxy.conf :

cd /etc/systemd/system/docker.service.d

cat >> http-proxy.conf <<EOL
[Service]
Environment="HTTP_PROXY=$HTTP_PROXY"
EOL

cat >> https-proxy.conf <<EOL
[Service]
Environment="HTTPS_PROXY=$HTTPS_PROXY"
EOL

Faire attention à ce que les variables $HTTP_PROXY et $HTTPS_PROXY soient définies pour l’utilisateur qui va écrire dans les fichiers.

Appliquer les changements :

systemctl daemon-reload
systemctl restart docker

Issue de la documentation officielle indiquant les changements à appliquer pour que Docker fonctionne derrière un proxy.

Validation de la configuration avec Docker

docker login harbor.cyberwatch.fr

Nécessite l’ajout d’un préfixe cbw$ devant le login habituel de la licence Cyberwatch

Si la commande renvoie Login Succeeded, les configurations Proxy sont valides.

OPTIONNEL : Création des services très lentes lors du (re)démarrage de l’application

Il est possible que la création des services prennent un temps plus important qu’elle ne le devrait.

Cela se produit si le service docker tente de résoudre le DNS avant de passer par le Proxy.

Dans ce cas, ajouter la ligne suivante dans le fichier /etc/hosts :

188.165.35.138 harbor.cyberwatch.fr

Cette ligne permet d’associer directement l’IP à l’URL que le DNS tente de résoudre.