# SAPPORO-fileserver README Ja SAPPORO-service は input 用のファイルストレージと output 用のファイルストレージに分けられます。input 用のファイルストレージは nginx を用いています。 output 用のファイルストレージは S3 互換のシンプルなオブジェクトストレージ である [Minio](https://www.minio.io) を用いています。 ## デプロイ docker-compose を使います。 ```shell $ git clone https://github.com/suecharo/SAPPORO.git $ cd SAPPORO/SAPPORO-fileserver $ vim docker-compose.yml # Edit HERE! environment: MINIO_ACCESS_KEY: access_key MINIO_SECRET_KEY: secret_access_key $ docker-compose up -d ``` ## Input 用のファイルストレージの使い方 まず、 `docker-compose.yml` がおいてある dir の path を調べ、 `nginx.conf` を編集します。 ```shell $ pwd /home/ubuntu/SAPPORO/SAPPORO-fileserver $ vim nginx.conf server { listen 80; listen [::]:80; server_name localhost; root /home/ubuntu/SAPPORO/SAPPORO-fileserver/data; # HERE location / { autoindex on; } $ docker-compose restart input ``` ブラウザで、`localhost:1124` にアクセスしてください。 下記のようなファイルパスが得られるので、`localhost:1124` の部分を `sapporo-fileserver-input` に変更してください。 ``` http://localhost:1124/input/small.ERR034597_1.fq # -> http://sapporo-fileserver-input/input/small.ERR034597_1.fq ``` ## Output 用のファイルストレージの使い方 ブラウザで、`localhost:1123` にアクセスしてください。 ![Mineo Login](https://i.imgur.com/m1ghCUn.png) 上で設定した、Access Key と Secret Key を入力してください。 ![Minio Home](https://i.imgur.com/zKFAXzd.png) --- データ書き出し用の Bucket を作成します。ブラウザからでもコマンドラインからでも出来ます。 コマンドラインからやる場合の例は下記の通りです。 ```shell $ docker-compose exec app mc config host add sapporo http://0.0.0.0:80 access_key secret_access_key $ docker-compose exec app mc mb sapporo/sapporo ``` これで、`sapporo` という Bucket が作成されます。 --- Workflow Prepare において、S3 の代わりに SAPPORO-fileserver を指定します。 ![Test](https://i.imgur.com/y0Tv7JZ.png) --- 結果は下記のように出力されます。 ![Output](https://i.imgur.com/scZJbcm.png) 出力の実体は、`SAPPORO/SAPPORO-fileserver/data/sapporo` 以下に存在します。 ```shell $ cd data/sapporo $ ls cwl_upload $ cd cwl_upload $ ls small.ERR034597_1_fastqc.html small.ERR034597_1.trimmed_fastqc.html small.ERR034597_1.trimmed.fq ```