コンテンツにスキップ

クイックスタート

project 名と同じ DNS ドメインを作る。マシンごとに 1 度だけで、sudo が要る。

ターミナルウィンドウ
sudo container system dns create crawler-storage

これで store が seaweedfs.crawler-storage としてプラットフォームの DNS に登録され、 他のコンテナからも host からも同じ綴りで引ける。

submodule の中からでも同じ store が立つ(project 名も volume も同じ)ので、消費者の repo から 出なくてよい。

ターミナルウィンドウ
sh scripts/stack.sh up # または sh .upstream/seaweedfs/scripts/stack.sh up
sh scripts/stack.sh down

stack.sh は起こす前に 2 つを見る —— container と container-compose が PATH に居るか、 DNS ドメインが登録されているか。足りなければ名指しで止まる。

口 コンテナから host から 用途
S3 API http://seaweedfs.crawler-storage:8333 http://127.0.0.1:8333 aws CLI。普段はこちら
Filer http://seaweedfs.crawler-storage:8888 http://127.0.0.1:8888 ブラウザで中身を見る
Master :9333 http://127.0.0.1:9333 /dir/status で状態を見る

host 側から使うときは 127.0.0.1 のほうを選ぶ。macOS では、Apple 署名でないバイナリ (node・grpcurl・aws)がコンテナの subnet に繋げない環境があり、DNS 名では届かないことがある。

成果物をブラウザで探すなら http://127.0.0.1:8888/ui/index.html —— 新しい順に並ぶので、さっき撮ったものが一番上に出る。詳しくは 成果物を探す。

bucket は docker-compose.yml の S3_BUCKETS に並んでいて、起動時に entrypoint が作る (上限つきの再試行つき。順序を待つ init コンテナは無い)。鍵は bucket 名と同じ綴りで、 identity は bucket ごとに分かれている。詳しくは設定。

次に読むもの: 運用(消す・見る・リセット)、消費者(どの repo が何を使うか)。