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

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

新規登録して質問してみよう
ただいま回答率
87.20%
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というインフラから提供する商用サービスです。

解決済

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

Ayustak
ayus

総合スコア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というインフラから提供する商用サービスです。

1回答

0評価

0クリップ

351閲覧

投稿2022/03/20 10:11

編集2022/03/20 23:53

ruby 3.1.1
rails 6.1
amazon linux 2

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

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

terminal

$ docker-compose -f docker-compose.production.yml build Building app Step 1/9 : FROM ruby:3.1.1 ---> 8f824f60c31e Step 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 ---> Using cache ---> 10d0a37a6ef8 Step 3/9 : WORKDIR /myapp ---> Using cache ---> 339177a38c9a Step 4/9 : COPY Gemfile /myapp/Gemfile ---> Using cache ---> abf3ded0c784 Step 5/9 : COPY Gemfile.lock /myapp/Gemfile.lock ---> Using cache ---> b2b1d92a6ff9 Step 6/9 : RUN gem install bundler ---> Using cache ---> 916d7cb96897 Step 7/9 : RUN bundle install ---> Running in bbfc34f056e8 Fetching gem metadata from https://rubygems.org/........... Resolving dependencies..... Using rake 13.0.6 ~~~ 省略 ~~~ Fetching actionpack 6.1.5 Installing actionpack 6.1.5 Fetching nio4r 2.5.8 Installing nio4r 2.5.8 with native extensions Killed ERROR: Service 'app' failed to build: The command '/bin/sh -c bundle install' returned a non-zero code: 137

docker

# Dockerfile.production FROM ruby:3.1.1 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 WORKDIR /myapp COPY Gemfile /myapp/Gemfile COPY Gemfile.lock /myapp/Gemfile.lock RUN gem install bundler RUN bundle install COPY . /myapp RUN mkdir -p tmp/sockets

yml

# docker-compose.production.yml version: '3' services: app: build: context: . dockerfile: Dockerfile.production env_file: - .env command: bundle exec puma -C config/puma.rb -e production volumes: - .:/myapp - public-data:/myapp/public - tmp-data:/myapp/tmp - log-data:/myapp/log web: build: context: nginx_docker volumes: - public-data:/myapp/public - tmp-data:/myapp/tmp ports: - 80:80 depends_on: - app stdin_open: true tty: true volumes: public-data: tmp-data: log-data:

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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領域をちゃんと作るかビルドだけスペック高めなインスタンスを使うことをお勧めします。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

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というインフラから提供する商用サービスです。