====== Installation de LinkAce ====== ===== Prérequis ===== Avant de commencer, assurez-vous d'avoir installé les paquets suivants sur votre système: * PHP 8.0+ * Composer * Nginx * MySQL/mariaDB * npm * Git apt-get install php8-fpm ===== Création d'un utilisateur système ===== Pour gérer LinkAce, nous allons créer un utilisateur dédié: sudo adduser veille ===== Création de la base de données ===== mysql_secure_installation CREATE DATABASE linkace_db; CREATE USER 'linkace_user'@'localhost' IDENTIFIED BY 'M0t2p@sse#'; GRANT ALL PRIVILEGES ON linkace_db.* TO 'linkace_user'@'localhost'; FLUSH PRIVILEGES; exit; ===== Téléchargement de LinkAce ===== Passez à l'utilisateur veille et téléchargez LinkAce dans le répertoire /opt: sudo su veille cd /opt git clone https://github.com/Kovah/LinkAce.git ===== Configuration de LinkAce ===== Déplacez-vous dans le répertoire LinkAce et installez les dépendances avec Composer: cd LinkAce composer install --no-dev --optimize-autoloader Renommez le fichier .env.example en .env et mettez à jour les valeurs de configuration de la base de données et autres selon vos besoins. ===== Installation de LinkAce ===== Exécutez les commandes suivantes pour installer LinkAce: php artisan key:generate php artisan migrate php artisan setup:app npm install && npm run production ===== Configuration de Nginx ===== Modifiez votre fichier de configuration Nginx (par exemple /etc/nginx/sites-available/linkace) pour qu'il ressemble à ceci : server { listen 80; listen [::]:80; server_name localhost; root /opt/LinkAce/public; index index.php; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.0-fpm.sock; } location ~ /\.ht { deny all; } } Activez le site et redémarrez Nginx: sudo ln -s /etc/nginx/sites-available/linkace /etc/nginx/sites-enabled/ sudo systemctl restart nginx ===== Configuration du service Systemd ===== Créez un nouveau fichier de demarrage /opt/LinkAce/linkace.sh : #!/bin/bash LINKACE_PATH=/opt/LinkAce # Déplacez-vous vers le répertoire de LinkAce\ cd $LINKACE_PATH # Exécutez la commande\ sudo -u veille npm run production\ Créez un nouveau fichier de service systemd à /etc/systemd/system/linkace.service et ajoutez le contenu suivant: [Unit] Description=Start LinkAce After=network.target mariadb.service nginx.service php8.0-fpm.service [Service] ExecStart=/opt/LinkAce/linkace_start.sh User=veille Group=www-data [Install] WantedBy=multi-user.target Activez le service et démarrez-le: sudo systemctl enable linkace sudo systemctlstart linkace ===== Correction des problèmes de permission ===== Si vous rencontrez des erreurs liées aux permissions, par exemple lors de l'exécution de npm run production, vous pouvez corriger ces problèmes en modifiant les permissions sur les dossiers concernés. Voici comment vous pouvez le faire : sudo chown -R veille:www-data /opt/LinkAce/storage sudo chown -R veille:www-data /opt/LinkAce/bootstrap/cache sudo chmod -R 775 /opt/LinkAce/storage sudo chmod -R 775 /opt/LinkAce/bootstrap/cache ===== Installation des extensions PHP requises ===== Si vous rencontrez des erreurs indiquant que certaines extensions PHP sont manquantes, vous pouvez les installer en utilisant les commandes suivantes. Remplacez "bcmath" par le nom de l'extension requise : sudo apt install php-bcmath sudo systemctl restart nginx ===== Lancement de LinkAce au démarrage ===== Si vous souhaitez que LinkAce se lance automatiquement au démarrage de votre serveur, vous pouvez activer le service systemd que nous avons créé précédemment : sudo systemctl enable linkace À ce stade, LinkAce devrait être installé et fonctionnel. Vous pouvez accéder à LinkAce en visitant le nom de domaine que vous avez configuré depuis le reverse proxy de Nginx.