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:
まだ回答がついていません
会員登録して回答してみよう