321 字
2 分鐘
搬遷 Nextcloud 問題紀錄: Configuration was not read or initialized correctly
之前為了儲存一些東西自架了一台 nextcloud 當 NAS 用,當時為了預留以後方便搬遷的彈性,把所有 container 的 output 檔案都包成 volume 放在一個資料夾底下。(docker compose 檔案在這)
後來在進行搬遷時,也就是把檔案挖出來放到另一台機器上執行的時候遇到了一些問題,這裡記錄一下。
問題
問題:複製完檔案後 Container 成功啟動,但打開網頁會顯示 Configuration was not read or initialized correctly,並且無法進入管理頁面。
解決方法
研究了一下是 volume 檔案權限的問題,當時在用 rsync 搬檔案的時候沒有保存到權限跟所有人,所以當我複製到新電腦時,檔案的 ownership 給了宿主帳號。
改一下 ownership 給 nextcloud container 的 user group 就可以了。
步驟
- 進到容器的 shell
docker-compose exec nextcloud /bin/bash - 檢查 nextcloud 資料夾的權限
cd /var/www/html ll確定所有檔案的 owner 都要是$USER,也就是www-data,不是的話就要用chown -R $USER:$USER- 如果 nextcloud 檔案 mount 的地方不是在這底下,也要去確認檔案歸屬。
心得
以後搬檔案如果要保存 ownership 跟權限設定,rsync 要加上 -a 的 flag,,cp 則是加 -p。
Reference
搬遷 Nextcloud 問題紀錄: Configuration was not read or initialized correctly
https://fuwari.vercel.app/posts/nextcloud-config-error/