Batzuetan Nextcloud instalazio bat zerbitzariz aldatu behar izaten da, adibidez, zerbitzaria zaharkitua geratu delako. Artikulu honetan Docker bidez egindako Nextcloud instalazio bat beste zerbitzari batera nola migratu azalduko dugu.
- Zerbitzari berrian oinarrizko azpi-egitura (Nextcloud + MariaDB , kasu batzuetan baita Collabora edo LibreOffice Online, edo Redis…) martxan jarri docker-compose erabiliz.
 Nextcloud-en URLa aldatu bada, berria jarriko dugu docker-compose.yml fitxategian Collabora/LOOLen konfigurazioan.
- Jatorrizko zerbitzariko Nextcloud instalazioaren barruko config/config.php fitxategian mantenu modua aktibatuko dugu (occ komandoa erabiliz ere egin daiteke)
 "maintenance" => true,
- 6-7 minutu itxaron, sinkronizazio bezeroek mantenuan dagoela ikus dezaten.
- Datu-basearen dump bat sortu:
docker exec DATU_BASEAREN_EDUKIONTZIAREN_IZENA mysqldump --single-transaction -h localhost -u DATU_BASEKO_ERABILTZAILEA -pDATU_BASEKO_PASAHITZA DATU_BASEAREN_IZENA > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak Kontuan izan -p eta datu-baseko pasahitzaren artean ez dela zuriunerik utzi behar. 
- Datu-basearen dump-a helburuko zerbitzarira kopiatu, adibidez, scp erabiliz.
 scp /jatorrizko/zerbitzariko/nextcloud-sqlbkp_202UHHEE.bak erabiltzailea@zerbitzari_berriaren_domeinua.eus:/nahi/dugun/bidea/- Zerbitzari berrian 22 ez den ataka bat erabiltzen badugu SSH zerbitzuarentzat, -P erabiliz zehaztu dezakegu. Adibidez, scp -P 2222…
- /jatorrizko/zerbitzariko/nextcloud-sqlbkp_202UHHEE.bak jatorrizko zerbitzariko datu-basearen dump fitxategiaren bidea da.
- erabiltzailea zerbitzari berrian fitxategia kopiatzeko erabili nahi dugun erabiltzailea da. SSH erabiltzeko eta helburuko karpetan idazteko baimenak izan behar ditu.
- zerbitzari_berriaren_domeinua.eus-en ordez dagokiona jarri.
- /nahi/dugun/bidea/ zerbitzari berrian dump fitxategia non kopiatu nahi dugun adierazteko erabiltzen da. Fitxategi-izena jartzen bazaio izen hori jarriko dio kopiari, bestela jatorrizko izena mantentzen du.
 
- Zerbitzari berrian 22 ez den ataka bat erabiltzen badugu SSH zerbitzuarentzat, -P erabiliz zehaztu dezakegu. Adibidez, 
- Zerbitzari berriko dump fitxategia datu-basearen kontainer barrura kopiatuko dugu:
 docker cp /nahi/dugun/bidea/nextcloud-sqlbkp_202UHHEE.bak DATU_BASEAREN_KONTAINERRAREN_IZENA:/dmpAurreko pausoan erabilitako bidea eta fitxategi-izena, eta datu-basearen kontainerraren izena jarri behar dira.
- Helburuko zerbitzarian datu-basea hustu:
 docker-compose exec db sh -c "mysql-u ERABILTZAILEA -pPASAHITZA -e 'DROP DATABASE nextcloud'Lehen pausoan datu-basearen kontainerra sortzean erabilitako erabiltzaile eta pasahitza jarri behar dira.
- Datu-base huts berri bat sortuko dugu:
 docker-compose exec db sh -c "mysql -u ERABILTZAILEA -pPASAHITZA -e 'CREATE DATABASE nextcloud'"
- Seigarren pausoan kontainer barrura kopiatu dugun dump fitxategia kargatuko dugu datu-basean.
 docker-compose exec db sh -c "mysql -u ERABILTZAILEA -pPASAHITZA nextcloud < /dmp"
- Kontainer barruko dump fitxategia ezabatuko dugu, dagoeneko ez baitugu behar.
 docker-compose exec db rm /dmp
- Jatorrizko zerbitzariko Nextcloud-en fitxategiak zerbitzari berrira pasa, adibidez, rsync erabiliz:
 rsync -Aax volumes/nextcloud/_data erabiltzailea@zerbitzari_berriaren_domeinua.eus:/nahi/dugun/bidea/volumes/nextcloud/_dataHelburuko zerbitzarian 22 ez den ataka bat erabiltzen badugu beste komando hau erabili:
 rsync -avz -e 'ssh -p ATAKA_ZENBAKIA' volumes/nextcloud/_data erabiltzailea@zerbitzari_berriaren_domeinua.eus:/nahi/dugun/bidea/volumes/nextcloud/_data
- Helburuko zerbitzariko config/config.phpeditatu: adibidez, URLa aldatu bada, datu-basearen izena, erabiltzailea, pasahitza, IPa eta ataka…
- DNSan aldaketak egin, domeinua zerbitzari berrira zuzentzeko.
- DNS aldaketak hedatzen direnean, mantenu modua kendu.





