Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

EC2でDockerを運用

EC2でDockerを運用することについて

どうか皆様の知識をご教示ください。

Webアプリを開発するにあたってAWSのインフラをどのような構成で構築するか悩んでいます。

※開発するWebアプリはカーセンサーのようなサイトをイメージしてください


利用するサービス ... Node.js, nignx, mariaDB

ローカル環境 ... 上記3つ全てDockerで構築して運用

このような場合、開発環境と本番環境をともに構築するにあたって下記の選択肢の中だとどれを選びますか?

理由も含めてご回答いただけると幸いです

  1. EC2にDockerを導入してローカル環境と同じように構築運用

  2. EC2ではDockerを利用せず、Node.js,nignxなどを直接インストールする。mariaDBはRDSを利用して構築運用

  3. EC2にDockerを導入してローカル環境と同じように構築運用するのは Node.js, nginx のみで、mariaDBについてはRDSで構築運用

0

1Answer

あまり詳しくなくて恐縮ですが、
EC2に全部役割を持たせるとランニングコストが嵩んでしまうため、極力低スペックなインスタンスファミリーを採用できる3がベターかなと思います
ただ開発環境だけなら構築の楽さを優先した1でもいいかも……

ところで念のため確認させてください
今回のようにDockerを用いるケースであればECSとRDSの組み合わせの方が適当だと思うのですが、EC2を採用せざるを得ない事情があるんですよね?

0Like

Comments

  1. @engineer_pay

    Questioner

    ご回答ありがとうございます。

    私も現在、他のプロジェクトでは3のような構成で行なっています。
    持て余すリソースがうまれるのではないかと心配していて、2の選択肢も考慮していました。

    おっしゃる通りECSを利用するのが最善策だと思います。
    主に採用しない理由は学習コストが理由です。

    開発エンジニア全員がインスタンスに直接アクセスして開発テストなどを行いたいため、
    ECSを利用するなら ECS on EC2 で運用することになると思いますが

    ECSを利用することでECSのみの学習だけでなく、EFSやSGなどその他依存関係にあるサービスもECSと組み合わせて構築・運用できるようにならなければなりません。

    会社では私以外全員が開発エンジニアでインフラを担当できるのは私1人しかいないためあまり学習コストが高いサービスは使いたくないという所以です。(私も一応開発エンジニアとして働いていますが)

Your answer might help someone💌