# 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 /var/lib/backuppc/migration tar caf /var/lib/backuppc/migration/nextcloud.tar.xz /srv/nextcloud/ ``` 4. Sauver le fichier de configuration de nextcloud ``` # par précaution, ne devrait pas être utile 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 ``` git clone https://yuno.oiseauroch.fr/gitea/tobias/infra-oasis21.git ``` 2. Create `config.php` from the file in vaultwarden 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 ``` docker cp /your/files nextcloud-app:/var/www/html/ docker-compose up -d nextcloud-app docker-compose exec nextcloud-app chown -R www-data:www-data /var/www/html/data ``` 8. change `config.php` rights ``` docker-compose exec nextcloud-app chown -R www-data:www-data /var/www/html/config ```