Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Herokuにdockerコンテナアプリをデプロイしたい

解決したいこと

Dockerを使ってRailsで映画のレビューサイトを作っています。一段落したのでHerokuにそのdockerコンテナアプリをデプロイしようと、https://qiita.com/Yuma953/items/d0ced6ee2b23163787b5 を参考に進めていき、上から順にコマンドを打っていって上記のサイトでいう

> git init #最初だけ
> heroku git:remote -a [アプリ名] #最初だけ
> git add .
> git commit -m "make it better"    #←ここまで
> git push heroku master

git commitまでは無事進みました。
その後git push heroku mainをしたところエラーが出てデプロイできませんでした。(herokuにログインはできています)その後heroku logsコマンドを打って、その出てきたエラー文のリンク先に行ったら下記のエラー内容が出ました。
上記のサイトの通りに進めたので既にデータベースは登録済みで、環境変数も設定してあります。

発生している問題・エラー

% git push heroku main

(省略) 
COPY failed: no source files were specified
remote: 
remote: Verifying deploy...
remote: 
remote: !       Push rejected to indiefilms.
remote: 
To https://git.heroku.com/indiefilms.git
 ! [remote rejected] main -> main (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/indiefilms.git'

該当するソースコード

docker/rails/Dockerfileがこちら↓

FROM ruby:3.1.0
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
RUN apt-get update -qq && \
apt-get install  -y --no-install-recommends \
build-essential \
default-mysql-client \
less \
nodejs \
yarn \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

ENV RAILS_ENV=production

ENV APP_ROOT /movie-review

# Set working directory as APP_ROOT
WORKDIR $APP_ROOT

# Add Gemfile
COPY Gemfile* ./    #←おそらくこれが原因

# Install Gemfile's bundle
RUN bundle install
COPY . ./
EXPOSE 3001

自分で試したこと

Dockerfile↓

# Add Gemfile
# COPY Gemfile* ./
COPY Gemfile /app/Gemfile

一度 COPY Gemfile* ./の部分をコメントアウトして、
代わりにCOPY Gemfile /app/Gemfileを記述して、docker-compose up --buildしてみましたがビルドできませんでした。

COPY Gemfile* ./が原因っぽいのですが、調べても出てこなくて困っています。

解決方法を教えていただけるとうれしいです。


ちなみに下記のheroku公式サイトも参考にしながら進めてます。
https://devcenter.heroku.com/ja/articles/build-docker-images-heroku-yml

0

No Answers yet.

Your answer might help someone💌