質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

916閲覧

[Rails,AWS,Docker]EC2にてコンテナビルド時のbundle installが失敗する

Ayustak

総合スコア30

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2022/03/20 10:11

編集2022/03/20 10:13

ruby 3.1.1
rails 6.1
amazon linux 2

ローカルで動作確認済みのdockerコンテナをAWSにデプロイしようとしています。
EC2にてgithubリポジトリをプルし、本番環境用のDockerfileでビルドすれば動くと認識しているのですが、ビルド時のbundle installが失敗してしまいます。
確認すべき点等、何かありましたら教えて頂けると幸いです。

↓"nio4r"のところで停止し、エラーが発生する

terminal

1$ docker-compose -f docker-compose.production.yml build 2 3Building app 4Step 1/9 : FROM ruby:3.1.1 5 ---> 8f824f60c31e 6Step 2/9 : RUN curl -s https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && apt-get update -qq && apt-get install -y nodejs yarn 7 ---> Using cache 8 ---> 10d0a37a6ef8 9Step 3/9 : WORKDIR /myapp 10 ---> Using cache 11 ---> 339177a38c9a 12Step 4/9 : COPY Gemfile /myapp/Gemfile 13 ---> Using cache 14 ---> abf3ded0c784 15Step 5/9 : COPY Gemfile.lock /myapp/Gemfile.lock 16 ---> Using cache 17 ---> b2b1d92a6ff9 18Step 6/9 : RUN gem install bundler 19 ---> Using cache 20 ---> 916d7cb96897 21Step 7/9 : RUN bundle install 22 ---> Running in bbfc34f056e8 23Fetching gem metadata from https://rubygems.org/........... 24Resolving dependencies..... 25Using rake 13.0.6 26~~~ 省略 ~~~ 27Fetching actionpack 6.1.5 28Installing actionpack 6.1.5 29Fetching nio4r 2.5.8 30Installing nio4r 2.5.8 with native extensions 31Killed 32ERROR: Service 'app' failed to build: The command '/bin/sh -c bundle install' returned a non-zero code: 137

docker

1# Dockerfile.production 2FROM ruby:3.1.1 3 4RUN curl -s https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ 5 && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ 6 && apt-get update -qq \ 7 && apt-get install -y nodejs yarn 8 9WORKDIR /myapp 10 11COPY Gemfile /myapp/Gemfile 12COPY Gemfile.lock /myapp/Gemfile.lock 13 14RUN gem install bundler 15RUN bundle install 16 17COPY . /myapp 18 19RUN mkdir -p tmp/sockets

yml

1# docker-compose.production.yml 2version: '3' 3services: 4 app: 5 build: 6 context: . 7 dockerfile: Dockerfile.production 8 env_file: 9 - .env 10 command: bundle exec puma -C config/puma.rb -e production 11 volumes: 12 - .:/myapp 13 - public-data:/myapp/public 14 - tmp-data:/myapp/tmp 15 - log-data:/myapp/log 16 web: 17 build: 18 context: nginx_docker 19 volumes: 20 - public-data:/myapp/public 21 - tmp-data:/myapp/tmp 22 ports: 23 - 80:80 24 depends_on: 25 - app 26 stdin_open: true 27 tty: true 28volumes: 29 public-data: 30 tmp-data: 31 log-data:

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yu_1985

2022/03/20 14:10

メモリ不足では? インスタンスタイプはなんでしょうか
Ayustak

2022/03/20 14:34

t2.nanoを使用しておりました。 仰る通りt2.mictoに変更したところ、無事bundle installが終了致しました。 返信頂き有難うございました。
yu_1985

2022/03/20 14:53

nanoのスペックでビルドは厳しいですね…。 microでも正直微妙です。 swap領域をちゃんと作るかビルドだけスペック高めなインスタンスを使うことをお勧めします。
guest

回答1

0

自己解決

メモリ不足が原因だったようで、インスタンスタイプをt2.nano→t2.microに変更したところ、bundle installが無事終了致しました。

投稿2022/03/20 14:38

Ayustak

総合スコア30

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問