oto-nari

ownCloud Infinite Scale(oCIS)を試してみる

Kojiro Tanaka (更新: )

https://owncloud.dev/ocis
↑だいたいここに全部書いてある

oCISとは

bewCloudには入門できなかったのでownCloud Infinite Scaleの門戸を叩いてみる

構築

どういうのを想像してるのか

シングルインスタンス、マルチコンテナで構成します

$ cd ~/ocis
$ mkdir ocis-config && mkdir ocis-data && mkdir thumbnails
$ touch .env
$ touch docker-compose.yml
$ ls -a .
.  ..  docker-compose.yml  .env  ocis-config  ocis-data  thumbnails

こんなフォルダ構成にしておく。

services:
  ocis:
    # https://hub.docker.com/r/owncloud/ocis/tags
    image: owncloud/ocis:7.1.2
    user: 1000:1000
    ports:
      - 127.0.0.1:9200:9200
    entrypoint:
      - /bin/sh
    command: ["-c", "ocis init || true; ocis server"]
    environment:
      OCIS_URL: ${OCIS_URL}
      OCIS_LOG_LEVEL: error
      PROXY_TLS: false
      OCIS_INSECURE: true
      PROXY_ENABLE_BASIC_AUTH: false
      IDM_ADMIN_PASSWORD: ${IDM_ADMIN_PASSWORD} # 管理者はadmin:${IDM_ADMIN_PASSWORD}でログインできる
      # まだ読解できてない。コンテナはGRPCをリッスンする?
      SETTINGS_GRPC_ADDR: 0.0.0.0:9191
      GATEWAY_GRPC_ADDR: 0.0.0.0:9142
      STORAGE_USERS_DATA_GATEWAY_URL: http://localhost:9200/data
      THUMBNAILS_FILESYSTEMSTORAGE_ROOT: /var/lib/ocis-thumbnails
    volumes:
      - ./ocis-config:/etc/ocis
      - ./ocis-data:/var/lib/ocis
      - ./thumbnails:/var/lib/ocis-thumbnails
    logging:
      driver: "local"
    restart: always

docker-compose.ymlはこんな感じ(.envで変数は適宜いい感じにしてあげる)
後はTLS終端のNginxからリバースプロキシで127.0.0.1:9200に向けて開放してあげれば良い。

環境変数はモジュールごとのリファレンスは存在するが見通しは悪い()ので、一旦適当に立ち上げてから困ったときに書き換えてゆく位が良いと思う
※OCIS_URL, IDM_ADMIN_PASSWORDあたりは自分で決めたほうが良さそう

というのも、「やんごとない理由で生成AIをストレージに保管するハメになった。ただしNSFWコンテンツも含まれるのでおいそれとGoogle Driveに上げられないハメ。」という話をいくつか爆死例も含めて聞いていたため、最小構成でのオンプレ共有ストレージのソリューションは知っておく必要があった。

ただまあこっそりやるにしろグローバルに環境を開放する場合はそれなりにセキュアな構成にしなければならないので、oCISがどのような構成を取ることができて、どのようにすれば安全に運用できるか、といった所は研究が必要なイメージ。

ドメインと1.5万円のミニPC+300円くらいの毎月の電気代を払えばストレージを運用できる。メモリもあまり使わないらしいので、本格的に使うのも良いかも

セキュリティについて

※参考: https://doc.owncloud.com/ocis/next/security/security.html

備考:スマホアプリも対応してる

https://play.google.com/store/apps/details?id=com.owncloud.android&hl=ja
アプリと連携もそのまま通った。Driveアプリとしても必要最低限の機能は備えている。

シェア

関連記事

← 記事一覧へ