Nextcloud
OSS の Google Drive みたいなやつです。
これまでは Raspberry Pi で運用
Raspberry Pi が余っていたので Nextcloud 用にしばらく使っていました。しかし、ある程度の規模になると OS がフリーズするまでに重くなり、ハードの乗り換えを考えていました。
ようやくメインの AMDマシン に乗り換えました。Docker で構築していたので、移行が恐ろしいほど簡単で*1驚きました。
- Raspberry Pi のスペック
- AMD マシンのスペック
具体的な docker-compose.yml の比較
それぞれの場合の docker-compose.yml
は以下のとおりです。Raspberry Pi では MySQL に rpi-mysql
を使っている以外は全く変わりありません。
- Raspberry Pi
version: '2' services: db: restart: always container_name: nextcloud-db hostname: nextcloud_db image: hypriot/rpi-mysql volumes: - ./db:/var/lib/mysql command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci environment: - MYSQL_ROOT_PASSWORD=HOGEHOGE - MYSQL_PASSWORD=FUGAFUGA - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud app: restart: always container_name: nextcloud-app hostname: nextcloud_app image: nextcloud:16.0.4 volumes: - ./app:/var/www/html ports: - 12345:80 links: - db
- AMD マシン
version: '2' services: db: restart: always container_name: nextcloud-db hostname: nextcloud_db image: mysql:5.7.27 volumes: - ./db:/var/lib/mysql command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci environment: - MYSQL_ROOT_PASSWORD=HOGEHOGE - MYSQL_PASSWORD=FUGAFUGA - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud app: restart: always container_name: nextcloud-app hostname: nextcloud_app image: nextcloud:16.0.4 volumes: - ./app:/var/www/html ports: - 12345:80 links: - db
app/ と db/ を rsync でコピーしただけ
すべての物理ファイルは ./app
および ./db
にありますので、Nextcloud の稼働を止めた上でそれらのファイルを rsync しました。数時間かかりましたが無事終わり、新しい環境で $ docker-compose up
を行うと問題なく起動しました*2。移行完了です。