Déploiement d'une solution sécurisée de ElabFTW avec MySQL
Objectifs
Les objectifs se situent à plusieurs niveaux :
- Déployer l'application eLabFTW sur une machine virtuelle Linux (VM) et sa base de données MySQL sur une autre VM. Pour cela, le plus simple sera d'utiliser un environnement avec l'hyperviseur PROXMOX.
- Sécuriser la communication entre les deux VM grâce à des certificats SSL.
- Générer des certificats SSL.
- Savoir réaliser quelques opérations d'exploitation comme la sauvegarde ou les mises à jour de eLabFTW.
RAPPELS sur les composants et éléments des services de Docker Compose : images, build, version, volumes, environnement…
- Le fichier docker-compose.yml comporte plusieurs éléments qui permettent de définir l’ensemble des services de(s) application(s) avec la configuration réseau et des volumes.
- En l’occurrence, il s’agit de décomposer le fichier docker-compose.yaml de eLabFTW (récupré sur internet) en 2 fichiers séparés, l’un pour le service et VM eLabFTW, et l’autre pour la VM MySQL.
- Le fichier docker-compose.yml pour 1 service contient :
- une section services
- un bloc par service : ◦ image ou build ◦ ports (3306, 443...) ◦ environment ◦ volumes ◦ depends_on (facultatif)
- une section volumes (volumes persistants entre la machine hôte et dans le conteneur docker)
Version: '3.XX' # la version du Docker Compose
services:
service 1 (web): # nom du 1er service
image: nom_image # image Docker du service
ports:
- "port_hôte:port_conteneur" # mappage des ports
environment:
- VARIABLE_1=valeur_1 # des variables d'environnement
- DB_HOST=elab
- DB_USER=elab
- DB_PASSWORD=secret
volumes:
- /chemin/hote:/chemin/conteneur # Mappage de volumes
depends_on:
- service2 # dépendances entre les services
service2 mysql):
# configuration du 2eme service
# ...
networks:
mynetwork: # un réseau personnalisé
driver: bridge # type de réseau
Étape 1 – Prérequis
Les logiciels comme Proxmox, Docker, Docker Compose, OpenSSL, MySQL sont nécessaires. Les droits sudo/root sont nécessaires. Une connexion réseau entre 2 VMs sont nécessaires.
- Disposer d’un hyperviseur de type PROXMOX
- Installer 2 machines virtuelles de type LINUX (
vm-elabftwpour eLabFTW,vm-mysqlpour MySQL) - Installer les paquets requis sous Linux
- Configurer les comptes
- Créer les répertoires pour les volumes persistants pour cert, web et mysql.
Dans la cadre de la formation nous allons travailler sur un Proxmox v9 et des vm en Debian 13.
Le modèle recommandé est d'effectuer une installation sécurisée avec les composants suivants:
- 1 adresse publique: 1XX.XXX.XXX.XXX, avec FQDN comme fqdn.cle.cnrs.fr ou cle.xyz.u-bordeaux.fr (ou cle.xyz.cnrs.fr)
- 1 machine virtuelle avec le frontend eLabFTW: xyz.front.lab (fqdn.cle.cnrs.fr ou cle.xyz.u-bordeaux.fr )
- 1 machine virtuelle avec MySQL avec TLS : xyz.mysql.lab
- En option (1 autre étape): 1 machine virtuelle avec un reverse proxy: TRAEFIK (ou NGINX ou Apache) et avec certificat SSL
- des volumes persistants sous /home/$USER/elabftw (pour cert, web et mysql)
1.1 Création d’un modèle VM proxmox pour installation ELabFTW
Créer une machine virtuelle à partir d’une image Debian 13 (debian-13.1.0-amd64-netinst.iso) Les spécifications technique retenues pour la VM :
- Disque dur : 10 Go
- Mémoire : 2 Go
Pour l’installation, privilégier une installation « non-graphique », et configurer le réseau en DHCP.
- Création mdp root : Jtech-elab-2025
- Création utilisateur : jtech / jtech
- Partitionnement des disques : assisté – utiliser tout un disque avec LVM chiffré
- Tout dans une seule partition
- Phrase secrète : Jtech-2025
- Si vous êtes derrière un proxy : mandataire http://"proxy_ip":"port_number"
- Décocher environnement de bureau Debian / Gnome
- Cocher serveur ssh / utilitaires usuels du système
La VM ainsi créée nécessite l’installation de paquets supplémentaires avant de pouvoir être convertie en template pour l’installation du Cahier de Laboratoire Électronique eLabFTW.
Taper la phrase secrète définie dans l'installation; et se connecter avec l'utilisateur jtech : Liste des paquets nécessaires à installer dans notre VM :
su
apt update
apt install docker.io docker-compose vim sudo curl borgmatic borgbackup
Ajout de l’utilisateur jtech aux groupes sudo et docker L’utilisateur jtech n’appartiendra aux groupes qu’après déconnexion et reconnexion. Avec le paquet docker.io en Debian 13 l'utilisateur appartient déjà au groupe docker
/sbin/usermod -aG sudo jtech
/sbin/usermod -aG docker jtech
Réaliser le clone de la VM Debian dans Proxmox :
- Éteindre proprement la VM : poweroff
- Dans Proxmox → clic droit sur la VM → Convert to template
1.2 Création vm-mysql et vm-elabftw sur proxmox
VM-MYSQL : 192.168.10.223
Depuis l’interface Proxmox Cliquer sur le template dans la liste à gauche (il est grisé) Clic droit dessus → Clone Options du clone :
- ID : de la nouvelle VM
- Name : vm-mysql
- Mode Full Clone (recommandé pour être indépendant du template) Une fois clonée, penser à changer le hostname de la nouvelle machine, fixer son adresse IP et déclarer son nom
sudo hostnamectl set-hostname vm-mysql
sudo vim /etc/hosts
127.0.0.1 localhost
127.0.1.1 vm-mysql
192.168.10.223 vm-mysql
sudo vim /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug ens18
#iface ens18 inet dhcp (ancienne ligne pour la configuration dhcp)
iface ens18 inet static
address 192.168.10.223
netmask 255.255.255.0
gateway 192.168.10.1
dns-nameservers 192.168.10.1 8.8.8.8
Redémarrer le service réseau :
sudo systemctl restart networking
VM-ELABFTW : 192.168.10.226
Depuis l’interface Proxmox Cliquer sur le template dans la liste à gauche (il est grisé)
Clic droit dessus → Clone Options du clone :
- ID : de la nouvelle VM
- Name : vm-elabftw
- Mode Full Clone (recommandé pour être indépendant du template) Une fois clonée, penser à changer le hostname de la nouvelle machine, fixer son adresse IP et déclarer son nom Démarrer la vm et se connecter jtech :
sudo hostnamectl set-hostname vm-elabftw
sudo vim /etc/hosts
127.0.0.1 localhost
127.0.1.1 vm-elabftw
192.168.10.226 vm-elabftw
sudo vim /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug ens18
#iface ens18 inet dhcp (ancienne ligne pour la configuration dhcp)
iface ens18 inet static
address 192.168.10.226
netmask 255.255.255.0
gateway 192.168.10.1
dns-nameservers 192.168.10.1 8.8.8.8
Redémarrer le service réseau :
sudo systemctl restart networking
Étape 2 – Installation de l'instance Docker MySQL (vm-mysql)
Il est également possible d'installer le service MySQL sans l'instance docker, mais cette partie ne sera pas abordée. Se connecter sur la vm : jtech/jtech Si vous êtes derrière un proxy :
export http_proxy=http://"proxy_ip":"port_number"
export https_proxy=http://"proxy_ip":"port_number"
2.1 Adapter ou créer docker-compose.yml pour l'instance Docker avec le service MySQL
Si l'on n'a pas créé la vm-mysql à partir du template proxmox (cf. 1.1 et 1.2), installer les paquets suivants:
su
apt update
apt install -y sudo curl vim borgbackup borgmatic docker-compose
Ajout de l’utilisateur jtech aux groupes sudo et docker L’utilisateur jtech n’appartiendra aux groupes qu’après déconnexion et reconnexion. Avec le paquet docker.io en Debian 13 l'utilisateur appartient déjà au groupe docker
/sbin/usermod -aG sudo $USER
/sbin/usermod -aG docker $USER
exit
Si on est parti du template proxmox :
Créer les répertoires pour les volumes persistants
mkdir -p /home/$USER/elabftw/cert
mkdir -p /home/$USER/elabftw/mysql
- Télécharger la dernière version fichier docker-compose.yml proposée par le développeur Nicolas Carpi sur le site de eLabFTW et l'adapter selon ses besoins d'installation pour la vm-mysql.
cd /home/$USER/elabftw
curl -so docker-compose.yml "https://get.elabftw.net/?config"
Copier le fichier docker-compose.yml d'origine pour l'envoyer par la suite sur notre vm-elab Modifier le docker-compose récupéré, ou copier le modèle fourni ci-dessous:
cp docker-compose.yml docker-compose.yml.bak
vim docker-compose.yml
ATTENTION:
Si l'on part du fichier docker-compose récupéré via la commande curl, et comme les deux vm sont séparées ne pas oublier d'ajouter la ligne ports pour que le port soit joignable depuis la machine vm-elabftw. Idem pour le volume persistent ./cert car il s'agit d'une installation sécurisée.
Il faut aussi ajouter la ligne command pour que mySQL soit lancé en SSL
Pour les versions récentes de docker, la commande docker-compose est remplacée par la commande docker compose. De même le fichier docker-compose.yml n'a plus besoin d'avoir la ligne version: "3"
name: elabftw
# the services are the elabftw container (webservice) and MySQL (database)
services:
# the mysql database image
# Note: if you already have a MySQL server running, you don't need to use this image, as you can use the already existing one
# In this case, add the IP address of the server in DB_HOST and comment out or remove this block
mysql:
image: mysql:8.4
restart: always
container_name: mysql
# add an healthcheck block so the web container knows when it is ready to accept connections
# use double $ here so env vars are correctly found
healthcheck:
test: "/usr/bin/mysql --user=$$MYSQL_USER --password=$$MYSQL_PASSWORD --execute 'SHOW DATABASES;'"
interval: 5s
timeout: 5s
retries: 42
# drop some capabilities
cap_drop:
- AUDIT_WRITE
- MKNOD
- SYS_CHROOT
- SETFCAP
- NET_RAW
cap_add:
- SYS_NICE
environment:
# need to change
- MYSQL_ROOT_PASSWORD=B2c2tgmOvoIqX022uyiA88OwqWCT0AV
# no need to change
- MYSQL_DATABASE=elabftw
# no need to change
- MYSQL_USER=elabftw
# need to change IMPORTANT: this should be the same password as DB_PASSWORD from the elabftw container
- MYSQL_PASSWORD=RuMDR7y4fFy2kFAZjH3znGzGoDWTCyo
# need to change, this is your timezone, see PHP_TIMEZONE from the elabftw container
- TZ=Europe/Paris
# Update this if you want to run the server on a different port than 3306.
# - MYSQL_TCP_PORT=3306
volumes:
- ./mysql:/var/lib/mysql
- ./cert:/etc/certs
command: [ "mysqld",
"--character-set-server=utf8mb4",
"--collation-server=utf8mb4_unicode_ci",
"--bind-address=0.0.0.0",
"--require_secure_transport=ON",
"--ssl-ca=/etc/certs/ca-cert.pem",
"--ssl-cert=/etc/certs/server-cert.pem",
"--ssl-key=/etc/certs/server-key.pem" ]
# The mysql container exposes 3306/33060. Though it does not make an operational difference,
# make sure to document your usage here.
ports:
- '3306:3306'
Étape 3 – Mise en place et configuration des certificats SSL
Cette étape se situe au niveau de la VM mySQL :
1 - Générer les certificats sur la VM mySQL 2 - Copier et configurer le certificat SSL sur la VM eLabFTW
Génération des certificats
Se placer dans le répertoire /home/$USER/elabftw/cert
cd /home/$USER/elabftw/cert
Pour simplifier on crée un fichier req.cnf pour les options de la commande openssl req.
Pour le Common Name ou CN il est important de saisir le nom du serveur MySQL (ou l'adresse ip) utilisé pour la configuration d'elabFTW. IP serveur mysql: 192.168.10.223
[ req ]
distinguished_name = dn_section
prompt = no
string_mask = utf8only
default_bits = 2048
encrypt_key = no
[ dn_section ]
C = FR
ST = Nouvelle-Aquitaine
L = Bordeaux
O = CNRS
OU = JTECH
CN = 192.168.10.223
emailAddress = email@example.com
[ v3_ca ]
basicConstraints=CA:TRUE
keyUsage = cRLSign, keyCertSign
[ v3_req ]
basicConstraints=CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth, clientAuth
Précisions sur les options:
- req_extensions = v3_req : indique à OpenSSL d'utiliser les extensions définies dans la section [ v3_req ] pour la requête de certificat.
- extendedKeyUsage = serverAuth, clientAuth: définit les usages du certificat, permettant à MySQL de l'utiliser pour l'authentification du serveur (serverAuth) et du client (clientAuth).
3.1 Sur la VM MySQL – Générer la CA
openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 3650 -key ca-key.pem -out ca-cert.pem -subj "/CN=MySQL CA"
A ce stade on a 2 fichiers :
- ca-cert.pem – Fichier de certificat Certificate Authority (CA).
- ca-key.pem – Fichier de clé Certificate Authority (CA).
On utilise ces 2 clés pour générer les certificats serveur
3.2 Générer certificat serveur avec les extensions v3_req
openssl req -new -config req.cnf -keyout server-key.pem -out server-req.pem
openssl x509 -req -in server-req.pem -days 3650 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem -extfile req.cnf -extensions v3_req
On a donc 2 fichiers :
- server-cert.pem – Fichier certificat SSL du serveur mySQL
- server-key.pem – Fichier de clé SSL pour le serveur mySQL
3.4 Vérifier les certificats
openssl verify -CAfile ca-cert.pem server-cert.pem
server-cert.pem: OK
On peut avoir cette erreur en version Debian 12
C = FR, ST = Aquitaine, L = Bordeaux, O = CNRS, OU = JTECH, CN = xyz.mysql.lab
error 18 at 0 depth lookup: self signed certificate
error server-cert.pem: verification failed
client-cert.pem: OK
C'est parce que nous avons utilisé le même CN pour le ca-cert.pem et le server-cert.pem. Cela fonctionne quand même
3.5 Positionner les droits sur les certificats sur la VM MySQL (sous /home/$USER/elabftw/cert)
Il faut que le fichier server-key.pem prenne l'uid: 999 (utilisateur mysql dans le container) pour que le serveur se lance avec ssl.
sudo chown 999 server-key.pem
3.6 Créer et lancer le conteneur MySQL
Sous le répertoire /home/$USER/elabftw/ où se trouve votre fichier docker-compose.yml (avec le service MySQL), taper la commande ci-après :
docker compose up -d
ATTENTION : si vous êtes derrière un proxy, il faut le configurer pour le service docker
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
Ajouter ces lignes:
[Service]
Environment="HTTP_PROXY=http://proxy_ip:port_number"
Environment="HTTPS_PROXY=http://proxy_ip:port_number"
Puis recharger le service docker
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl show --property=Environment docker
Une fois le container lancé, ssurez-vous que les connexions SSL sont bien actives dans le conteneur. Vous devez trouver ces lignes dans les logs de docker
docker compose logs
...
mysql | 2025-09-24T13:07:10.870784Z 0 [Warning] [MY-010068] [Server] CA certificate /etc/certs/ca-cert.pem is self signed.
mysql | 2025-09-24T13:07:10.870807Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
...
Étape 4 – Installation de l'application eLabFTW (avec Docker) sur la VM (vm-elab)
4.1 Installer l'application comme frontend à partir du fichier docker-compose.yml
Sur cette machine Docker il n'y aura que le frontend eLabFTW qui est configuré à partir du fichier docker-compose.yml
Se connecter sur la vm : jtech/jtech
Si vous êtes derrière un proxy :
export http_proxy=http://"proxy_ip":"port_number"
export https_proxy=http://"proxy_ip":"port_number"
Si l'on n'a pas créé la vm-elabftw à partir du template proxmox (cf. 1.1 et 1.2), installer les paquets suivants:
su
apt update
apt install -y sudo curl vim borgbackup borgmatic docker-compose
Ajout de l’utilisateur jtech aux groupes sudo et docker L’utilisateur jtech n’appartiendra aux groupes qu’après déconnexion et reconnexion. Avec le paquet docker.io en Debian 13 l'utilisateur appartient déjà au groupe docker
/sbin/usermod -aG sudo $USER
/sbin/usermod -aG docker $USER
exit
Si on est parti du template proxmox :
Créer les répertoires nécessaires pour les volumes persistants docker :
mkdir -p /home/$USER/elabftw/cert
mkdir -p /home/$USER/elabftw/web
Se placer dans le répertoire :
cd /home/$USER/elabftw
- Télécharger la dernière version fichier docker-compose.yml proposée par le développeur Nicolas Carpi sur le site de eLabFTW et l'adapter selon ses besoins d'installation pour la vm-elabftw, ou récuperer le fichier docker-compose.yml.bak de la vm-mysql
curl -so docker-compose.yml "https://get.elabftw.net/?config"
vim docker-compose.yml
ATTENTION:
Si l'on part du fichier docker-compose récupéré via la commande curl, ne pas oublier d' ajouter la ligne pour le volume persistent ./cert et de décommenter DB_CERT_PATH car il s'agit d'une installation sécurisée.
Pour les versions récentes de docker, la commande docker-compose est remplacée par la commande docker compose. De même le fichier docker-compose.yml n'a plus besoin d'avoir la ligne version: "3" Modifier le docker-compose récupéré, ou copier le modèle fourni ci-dessous:
# docker-elabftw configuration file
# use : "docker-compose up -d" to start containers
# this config file contains all the possible configuration options, shown with default values
# https://hub.docker.com/r/elabftw/elabimg/
# https://www.elabftw.net
# this is the "compose project name"
# see: https://docs.docker.com/compose/compose-file/04-version-and-name/
name: elabftw
services:
# our first container is nginx + php-fpm + elabftw
web:
image: elabftw/elabimg:5.2.8
restart: always
container_name: elabftw
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- FOWNER
- DAC_OVERRIDE
environment:
- DB_HOST=192.168.10.223
- DB_PORT=3306
- DB_NAME=elabftw
- DB_USER=elabftw
- DB_PASSWORD=RuMDR7y4fFy2kFAZjH3znGzGoDWTCyo
- DB_CERT_PATH=/elabftw/mysql-cert/ca-cert.pem
#####################
# PHP CONFIGURATION #
#####################
# the timezone in which the server is
# better if changed (see list of available values: http://php.net/manual/en/timezones.php
- PHP_TIMEZONE=Europe/Paris
# again
- TZ=Europe/Paris
#########################
# ELABFTW CONFIGURATION #
#########################
- SECRET_KEY=def000000c18a058521a6a93bc094f0dd43d9743d37c1436390bcbbf463f7b26c709bf76558fdde1db296a4a64b671e669482fae629e23acfa607c29855c507a14932ef9
- SITE_URL=https://192.168.10.226
#######################
# NGINX CONFIGURATION #
#######################
- SERVER_NAME=192.168.10.226
- DISABLE_HTTPS=false
- ENABLE_LETSENCRYPT=false
ports:
- '443:443'
volumes:
- ./web:/elabftw/uploads
- ./cert:/elabftw/mysql-cert
#chem-plugin:
# image: elabftw/chem-plugin
# container_name: chem-plugin
# restart: always
# networks:
# - elabftw-net
#opencloning-plugin:
# image: manulera/opencloning:prod-baseurl-opencloning
# container_name: opencloning-plugin
# restart: always
# networks:
# - elabftw-net
# environment:
# - ALLOWED_ORIGINS=*
# - ROOT_PATH=/opencloning
# - BACKEND_URL=/opencloning/
# - SHOW_APP_BAR=false
# - DATABASE=elabftw
# this is an optional ENV var that we use to prevent connecting to WekWikGene, see: https://github.com/manulera/OpenCloning_backend/blob/master/src/opencloning/app_settings.py
# and https://github.com/manulera/OpenCloning/blob/master/docker-compose.yml
# if you'd like to allow your users to pull data from this external repository, do not add this env var or add the URL to it. You can restrict further, too, as you see fit.
# - ALLOWED_EXTERNAL_URLS=https://www.addgene.org/,https://media.addgene.org/,https://seva-plasmids.com/,https://api.ncbi.nlm.nih.gov/datasets/v2alpha/,https://eutils.ncbi.nlm.nih.gov/entrez/eutils/,https://www.snapgene.com/local/fetch.php,https://benchling.com/,https://assets.opencloning.org/annotated-igem-distribution,http://www.euroscarf.de/
Étape 5 – Configuration de la VM eLabFTW avec les certificats SSL
5.1 Copier les certificats sur la vm-elabftw
Depuis la VM MySQL copier le certificat ca-cert.pem sur la VM eLabFTW (sous /home/$USER//elabftw/cert)
cd /home/$USER/elabftw/cert
scp ca-cert.pem login@vm-elabftw:/home/$USER/elabftw/cert
Revenir sur la vm-elabftw, dans le répertoire /home/$USER/elabftw/cert : Changer les droits en lecture seule pour le certificat et changer l'itilisateur qui doit avoir l'id de l'utlisateur nginx (101)
cd /home/$USER/elabftw/cert
chmod 400 ca-cert.pem
sudo chown 101 ca-cert.pem
5.2 Lancer l’application et le conteneur eLabFTW
Dans le répertoire /home/$USER/elabftw/, taper la commande ci-après :
docker compose up -d
ATTENTION : si vous êtes derrière un proxy
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
Dans le fichier http-proxy.conf ajouter les lignes suivantes:
[Service]
Environment="HTTP_PROXY=http://proxy_ip:port_number"
Environment="HTTPS_PROXY=http://proxy_ip:port_number"
puis taper :
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl show --property=Environment docker
ATTENTION :
Pour éviter cette erreur:
PHP Fatal error: Uncaught PDOException: PDO::__construct(): open_basedir restriction in effect. File(/mysql-cert/server-cert.pem) is not within the allowed path(s): (/.dockerenv:/elabftw/:/tmp/:/usr/bin/unzip) in /elabftw/src/classes/Db.php:52``
Le DB_CERT_PATH doit commencer par le chemin /elabftw pour le rendre accessible par php
Étape 6 – Post-installation et configuration finale
6.1 Depuis la VM eLabFTW - Initialiser la base de données eLabFTW
docker exec -it elabftw bin/init db:install
_ _ _____ _______ __
___| | __ _| |__ | ___|_ _\ \ / /
/ _ \ | / _| | '_ \| |_ | | \ \ /\ / /
| __/ |__| (_| | |_) | _| | | \ V V /
\___|_____\__,_|_.__/|_| |_| \_/\_/
Welcome to the install of eLabFTW!
This program will install the MySQL structure.
→ Initializing MySQL database...
✓ Installation successful! You can now start using your eLabFTW instance.
→ Register your Sysadmin account here: https://192.168.10.227/register.php
→ Subscribe to the low volume newsletter to stay informed about new releases: http://eepurl.com/bTjc
6.2 Depuis la VM eLabFTW - Tester la communication entre la VM eLabFTW et la VM MySQL
Vous pouvez tester la communication non sécurisée entre l'application eLabFTW et la base de données MySQL.
docker exec -it elabftw bin/console db:check
Si cela retourne:
Database check
==============
Current version: 144
Required version: 144
No upgrade required.
Tout est OK, par contre si on a:
In Db.php line 52:
SQLSTATE[HY000] [2002] (trying to connect via (null))
In Db.php line 52:
PDO::__construct(): Peer certificate CN=`server-cert' did not match expected CN=`xyz.mysql.lab'
Le problème est du à un certificat avec le mauvais Common Name ou que vous n'avez pas utilisé les bons arguments pour lancer le serveur mySQL.
In Db.php line 52:
SQLSTATE[HY000] [2002] (trying to connect via (null))
In Db.php line 52:
PDO::__construct(): SSL operation failed with code 1. OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
db:check
6.3 Lancer l'application eLabFTW depuis l'URL
- Saisir l’URL
https://fqdn.cle.cnrs.fr/register.phpou 'https://"ip vm-elabftw"(définie dans le fichier docker-compose) dans un navigateur internet afin de se connecter à l’application Pour créer le premier utilisateur, cliquer sur "Don't have an account ? Register now" - Saisir une adresse mail afin de créer l’utilisateur et administrateur SYSADMIN pour l'application.
6.4 Visualiser les logs sur le système docker eLabFTW
docker logs elabftw
Références et bibliographies utiles
- Pour installer et utiliser eLabFTW, depuis les instructions et la documentation officielle de eLabFTW
- elabftw GitHub
- Pour installer et utiliser Docker et Docker Compose, suivez les instructions spécifiques à votre système d'exploitation depuis la documentation officielle de Docker et documentation Docker Compose
- Pour consulter le guide du réseau Qualité en Recherche Guide QeR
- Pour consulter le guide et l'intranet du CNRS Guide CNRS