/growi-docker-compose-pi

:anchor: growi-docker-compose - The fastest way to boot All-in-One GROWI

Primary LanguageDockerfileOtherNOASSERTION

growi-docker-compose for Raspberry Pi

これなに?

  • Growiのdocker-compose版(growi-docker-compose)をRaspberry Pi(以下ラズパイ)上のdocker-composeで実行できるように修正したものです

    • ラズパイのDocker-composeで動かすには,ラズパイの設定の変更が必要なので,注意点を確認してください.
  • オリジナル版との大きな違いは Dockerfile, Dockerfile of Elasticsearch, docker-compose.ymlの3点で,ラズパイのプロセッサであるarm64v8用に書き直しました.

  • docker-compose up -d --buildで実行する前に,docker-compose.ymlで設定を確認してください.詳細は本家に詳しいことが書かれているので,そちらで確認をお願いします.

    • growiのデータは,初期では./dataに保存されるのでdocker-compose.ymlのvolumesを適宜修正してください.

注意点

  • Mongo3 は64bit版のOSしかサポートしていないので,ラズパイのカーネルを64bit版に修正する必要があります.
    • アップグレード方法はこちらに書いてある通りです.(アップグレードは自己責任でお願いします)
  • ラズパイのdockerとdocker-composeも64bit版をインストールする必要があります.
    • docker のインストール方法についてはこちら.
  • ラズパイ3B+(1GB RAM)を使用している場合はスワップメモリを増やす必要があります(RAMが少ないとビルド中に固まるため).参考までに,私の環境では100MBから2048MBに変更しました.
    • Raspberry Pi4の4GBではメモリが十分にあるので,恐らくスワップメモリを増やす必要はありません
  • ビルドには30分以上かかります

動作環境

  • 動作を確認した環境は以下の通りです.

    • Raspberry Pi 3 model B+
    • OS: Raspbian Buster ver2010-09-29
    • Docker: 19.03.5
    • Docker-compose: 1.21.0
    • Kernel: 5.4.49-v8+
    • Growi: 4.0.7
    • mongo: 3.6
    • elasticsearch: 6.6.1
    • nodejs: 10.18.1

ライセンス

  • The MIT License (MIT)
  • See LICENSE file.

以下英語版

What is this?

Warning

  • Since Mongo3 supports a 64-bit kernel only, so RaspberryPi must be running on the 64-bit kernel.
    • A detail how to upgrade to the 64-bit kernel is here
  • You need to install the 64bit version of docker and docker-compose.
    • I installed the 64-bit docker from binary. Please see here.
  • If you use Raspberry Pi which does not have small memory, e.g. Raspberry Pi 3B+, 1GB RAM, you need to change the swap size of RAM. In my case, changed 100MB to 2048MB.
  • It takes at least 30 minutes to build growi on Raspberry Pi 3B+.

My environment

  • Raspberry Pi 3 model B+
  • OS: Raspbian Buster ver2010-09-29
  • Docker: 19.03.5
  • Docker-compose: 1.21.0
  • Kernel: 5.4.49-v8+
  • Growi: 4.0.7
  • mongo: 3.6
  • elasticsearch: 6.6.1
  • nodejs: 10.18.1

License

  • The MIT License (MIT)
  • See LICENSE file.