1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ローカル環境が依存していた社内用AWSを削除する流れが進みつつあるので、当初はLocalStackを導入する予定でしたが、Flociの導入を試してみました。

LocalStackにしなかったのは、つい最近有料プラン前提になったということを知り、
更にはアカウントの登録等が必要ということで、想定とは異なってしまっていたためです。
代わりになるものないかーと見つけたのがFlociです。

今回は、既存のDocker Compose環境にFlociを追加し、ブラウザで表示するところまでやってみたのでメモ的に紹介です。

環境

  • 既存のDocker Compose環境に追加
  • Webサーバーは steveltn/https-portal を利用
  • アプリケーションは CakePHP4

今回は既存環境への後付け導入だったため、なるべく他のコンテナに影響を与えない形で追加しています。

Flociを追加

まずはFlociを追加します。

services:
  floci:
    image: hectorvent/floci:latest-aws
    container_name: floci
    user: root
    ports:
      - "4566:4566"
    environment:
      FLOCI_HOSTNAME: floci
      FLOCI_DEFAULT_REGION: ap-northeast-1
      FLOCI_DEFAULT_ACCOUNT_ID: "000000000"
      FLOCI_STORAGE_MODE: hybrid
      AWS_DEFAULT_REGION: ap-northeast-1
      AWS_ACCESS_KEY_ID: "000000000"
      AWS_SECRET_ACCESS_KEY: dummy
    volumes:
      - ./docker/floci/data:/app/data
      - ./docker/floci/init/init.sh:/etc/floci/init/ready.d/01-init.sh:ro
    networks:
      default:
        aliases:
          - web.floci

初回起動でバケットなど必要なものを作成するためにinitも設定。
aliasはwebコンテナ内から呼び出すために設定。

UIを追加

MinIOみたいに、ブラウザからもファイルを操作できたらと調べていたら、
UIもあるとのことで、こちらも追加。

services:
  floci-gui:
    image: ghcr.io/floci-io/floci-ui:latest
    container_name: floci-gui
    ports:
      - "3000:3000"
    depends_on:
      - floci

起動後、ブラウザからアクセスします。

http://localhost:3000

それっぽい画面が表示されました。AWS風らしいです。(ちょっと思ってたのと違う)
右上の「CLOUD」という部分を切り替えると他の見た目風にも変更できます。
image.png

バケット一覧

image.png

下に一覧がでます。

オブジェクト一覧

image.png

更に下に一覧がでます。縦に長くなっていくタイプでした。

ファイルアップロード

ブラウザから直接ファイルをアップロードできます。
複数指定や、フォルダごとなどのアップロードには対応していないみたいです。
また、D&Dでのアップロードにも対応していませんでした。

この辺りはMinIOの方が断然使い勝手はよいですね。
大量のファイルを一気に入れたい場合は、ソース側から直接入れたほうが良さそうです。

触ってみた感想

UIはもう少しMinIOのような操作感を求めていたので、
D&Dできないとかは少し不便ですが、S3だけでなく他のDynamo DBも使用するので、
1つコンテナを増やすだけで使えるのはとても便利ですね。

しばらく触りながら、実際の開発でどこまで使えるのかをもう少し試してみようと思います。

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?