ekylibre
pg_hba.conf pour l'authentification par mot de passe
JAVA_HOME
Cette procédure installe Ekylibre directement sur votre système (sans Docker). Elle convient si vous souhaitez profiler, attacher un debugger natif, ou si vous administrez un serveur Ubuntu dédié à Ekylibre.
Cible : Ubuntu 20.04 LTS. La branche
5.0-betautilise toujours Ruby 2.6.6. Pour Ubuntu 22.04+, certaines dépendances (PostGIS, libqt4, openjdk-8) nécessitent des PPAs ou des paquets ajustés. Si vous voulez aller plus vite, préférez la variante Docker dev ou Docker prod.
Cette page est longue. La barre ci-dessous met en surbrillance l'étape où vous vous trouvez en scrollant.
Pourquoi rbenv ? Ubuntu 20.04 ne fournit pas Ruby 2.6 dans ses dépôts officiels. rbenv permet d'installer et de basculer entre plusieurs versions de Ruby sans toucher au système.
sudo apt update && sudo apt install -y git curl
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Ajouter rbenv au PATH :
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
sudo apt install -y build-essential libreadline-dev libssl-dev zlib1g-dev redis-server
rbenv install 2.6.6
rbenv global 2.6.6
gem install bundler
Vérification :
ruby --version
# ruby 2.6.6p146 (2020-03-31 revision 67876)
Ekylibre compile ses assets via Webpacker, qui requiert Node.js et Yarn.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
Si la commande nvm n'est pas disponible après installation :
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
nvm install --lts
nvm alias default 'lts/*'
npm install -g yarn
Ekylibre est intrinsèquement géospatial — PostGIS n'est pas optionnel.
sudo apt install -y \
postgresql-13 \
postgresql-13-postgis-2.5 \
postgresql-13-postgis-2.5-scripts
ekylibre
sudo -u postgres createuser -d -P -s ekylibre
# Mot de passe demandé interactivement : choisir 'ekylibre' pour le développement local
echo "ALTER USER ekylibre SUPERUSER;" | sudo -u postgres psql
Attention : ce mot de passe simple ne convient que pour le développement. En production, voir la variante Docker prod standalone.
pg_hba.conf pour l'authentification par mot de passe
Sur une installation fraîche, PostgreSQL utilise peer pour les sockets Unix locaux. Ekylibre s'attend à md5 :
sudo vim /etc/postgresql/13/main/pg_hba.conf
Remplacer la ligne :
local all all peer
par :
local all all md5
Recharger :
sudo systemctl restart postgresql
Pour inspecter visuellement la base :
curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add -
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list'
sudo apt update && sudo apt install -y pgadmin4-desktop
PostGIS dépend de PROJ pour les transformations de coordonnées. La version d'Ubuntu 20.04 est en général compatible — vérifier :
dpkg -l | grep ^ii.*proj
Si la version installée est ≥ 5.2.0 et que vous rencontrez l'erreur
ERROR: source code not in proj.4 formatau lancement de Rails, il faut récupérer une version compatible de PROJ depuis l'espace de partage Ekylibre et la copier dans/opt/proj/share/.sudo mkdir -p /opt/proj/share # extraire proj.tar.gz dans /opt/proj/share/La marche-à-suivre détaillée se trouve dans la page Résolution de problèmes.
Ekylibre embarque des outils Java pour la génération de PDF (clôtures d'exercice, bordereaux).
sudo add-apt-repository ppa:rock-core/qt4
sudo apt update
sudo apt install -y libqtcore4
sudo apt install -y \
imagemagick graphicsmagick \
libproj-dev libgeos-dev libgeos++-dev \
libffi-dev libicu-dev libpq-dev \
openjdk-8-jdk libqtwebkit-dev \
tesseract-ocr pdftk
JAVA_HOME
echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc
echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.profile
source ~/.bashrc
Vérification :
java -version
# openjdk version "1.8.0_xxx"
systemctl status redis-server
# active (running)
L'API PFI (PostgreSQL Fédération d'identité) utilise des certificats Renater non inclus dans Ubuntu 20.04. À installer uniquement si vous comptez utiliser cette intégration :
sudo wget https://services.renater.fr/_media/tcs/geant_ov_rsa_ca_4_usertrust_rsa_certification_authority.pem \
-O /usr/local/share/ca-certificates/geant_ov_rsa_ca_4_usertrust_rsa_certification_authority.crt
sudo wget https://services.renater.fr/_media/tcs/geant_ov_rsa_ca_4.pem \
-O /usr/local/share/ca-certificates/geant_ov_rsa_ca_4.crt
sudo update-ca-certificates
L'environnement système est prêt. Passez au Setup de l'application Ekylibre (clone du repo, bundle, base de données, lexicon, premier run).
Cette documentation est open-source. Aidez-nous à l'améliorer en ouvrant une issue ou une pull request.