# Installation de l'infrastructure ### Lancement #### Certs Au premier lancement, assurez-vous que : - Le dossier `/DATA/docker/traefik/certs` existe - Créez un fichier `acme.json` à l'intérieur - Changez son propriétaire à `root` - Changez ses permissions à `600` C'est dans ce fichier que seront conservés tous les certificats générés par Traefik. ### Migration des données 1. Mettre nextcloud en mode maintenance :  ``` sudo -u www-data php occ maintenance:mode --on ``` 2. Faire un dump de la bdd ``` sudo -u postgres pg_dump -Fc nc > nc.dump ``` 3. Sauver les données du dossier nextcloud ``` mkdir -p /var/lib/backuppc/migration/data cp -r /srv/nextcloud/ /var/lib/backuppc/migration/data ``` 4. Sauver le fichier de configuration de nextcloud ``` cp /var/www/nextcloud/public_html/config/config.php /var/lib/backuppc/migration ``` … installation de proxmox, vm, docker. … ### Installation des services 1. Cloner le repo de l'infra et le mettre au bon endroit ``` git clone https://yuno.oiseauroch.fr/gitea/tobias/infra-oasis21.git mkdir -p /DATA/docker mv infra_oasis21 /DATA/docker/services ``` 2. copy file `config.php` and change values ``` cp /var/lib/backuppc/migration/config.php . # change host for redis sed -i 's#/run/redis/redis.sock#redis#' config.php # change dbhost sed -i 's#localhost#nextcloud-db#' config.php # change datadirectory sed -i 's#/srv/nextcloud#/var/www/html/data#' config.php ``` 3. Move `secrets/librezo.secrets.example` to `secrets/librezo.secrets` 4.Replace **nextcloud** and **collabora** password from vaultwarden ``` sed -i 's/__POSTGRES_PASSWORD__/nextcloudstrongpassword/g' config.php secrets/librezo.secrets sed -i 's/__COLLABORA_PASSWORD__/collaborastrongpassword/g' config.php secrets/librezo.secrets ``` 4. Start traefik ``` cd traefik docker-compose up -d ``` 5. Create docker containers and volume ``` docker-compose up --no-start ``` 6. Import database ``` docker cp nc.dump nextcloud-db:/nc.dmp docker-compose up -d nextcloud-db docker-compose exec nextcloud-db sh -c "pg_restore -d nc -U nc nc.dmp" docker-compose exec nextcloud-db rm /nc.dmp ``` 7. Copy files and set correct rights ``` docker cp /var/lib/backuppc/migration/data nextcloud-app:/var/www/html/ cp config.php nextcloud-app:/var/www/html/config/config.php docker-compose up -d nextcloud-app docker-compose exec nextcloud-app chown -R www-data:www-data /var/www/html/data docker-compose exec nextcloud-app chown -R www-data:www-data /var/www/html/config/config.php ``` 8. restart docker-compose ``` docker-compose restart ``` ### Configure collabora 1. connect to nextcloud 2. go to paramètres->nextcloud office-> utiliser mon propre serveur 3. choisir `code.oasis21.org`, décocher l'option `ne pas vérifier le certificat` 4. désinstaller l'application collabora built-in serveur