teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

誤字修正と加筆

2020/09/14 07:28

投稿

miyabi-sun
miyabi-sun

スコア21472

answer CHANGED
@@ -37,17 +37,26 @@
37
37
  例えば`/thumbnail/*`というパス配下の指定をされた場合、
38
38
  nginxはサムネイル画像があるフォルダの配下を直で探して返す設定にしましょう。
39
39
 
40
- Docker Compoeを使えば`docker-compose.yml`に数行書き足して、
40
+ [Docker Compose](https://docs.docker.jp/compose/overview.html)を使えば`docker-compose.yml`1ファイルに数行書き足して、
41
- 設定のスクリプトファイル1個読み込ませて`docker-compose up -d`コマンド一撃で立ち上げて開発できるようになす。
41
+ nginxの設定ファイル1個読み込ませて`docker-compose up -d`コマンド一撃で終わす。
42
+ 準備は大変でしょうけど、環境構築さえ終わってしまえば既存の作業量からあまり変わらないはずです。
42
43
 
43
44
  ---
44
45
 
45
46
  一般的で言えば、オブジェクトストレージを使った方が良いでしょうね。
47
+ サムネイル画像をGit管理しよう!という発想に至ったのは、
46
- Git管理したいというのは、「ユーザーが登録した画像が消える」事が怖いってことですよね?
48
+ 「ユーザーが登録した画像が消える」事が怖いからですよね?
47
- ならAWSのようなサービスに保証してもらえれば良いでしょう。
48
49
 
50
+ ならファイルがあることを保証してくれるサービスを利用すれば良いと思います。
49
- [Amazon S3](https://aws.amazon.com/jp/s3/)のようなインターネット上にHDDを持てるサービスあります。
51
+ 有名どころとしては[Amazon S3](https://aws.amazon.com/jp/s3/)とかいかでしょう?
50
- カルで開発すならば[minio](https://dev.classmethod.jp/articles/s3-compatible-storage-minio/)みたいなクローンソフトがあり、余計な課金を避けられます。
52
+ これはインタネット上にHDDを持てサービスで[中々堅牢](https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/DataDurability.html)す。
51
53
 
54
+ CDNで高速に配信したり、WebAPI越しにRubyからファイルの出し入れが出来たりしますので、
55
+ アイデア次第で普通にファイルに保存する感覚であれこれ使えるはずです。
56
+ ローカルで開発時では[minio](https://dev.classmethod.jp/articles/s3-compatible-storage-minio/)みたいなクローンソフトがあり、余計な課金を避けられます。
57
+
52
58
  開発者はDocker等でminioのサーバを立ち上げ、
53
- 利用者用の画面から登録した画像や、それを元に生成したサムネイル等のファイルを保管すると良いでしょう。
59
+ 利用者用の画面から登録した画像や、それを元に生成したサムネイル等のファイルを保管すると良いでしょう。
60
+
61
+ オブジェクトストレージというサービスでは色々と選択肢はありますので、
62
+ 競合他社を含めて検討してみてはどうでしょうか?