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

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

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

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

Ruby on Rails 5

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

Ruby

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

Ruby on Rails

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

Docker

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

Q&A

解決済

1回答

5795閲覧

DockerでRailsの開発環境構築(GemfileのCOPYができない)

runes224

総合スコア14

docker-compose

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

Ruby on Rails 5

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

Ruby

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

Ruby on Rails

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

Docker

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

0グッド

2クリップ

投稿2019/06/03 20:28

前提・実現したいこと

Railsも環境構築も初心者ですが、Docker for Macを使用してRails+postgresqlの構成で仮想環境を構築しようとしています。

以下の記事を参考に構築を行っています。
https://qiita.com/sakuraniumarete/items/f36a937412d281dfcf57

発生している問題・エラーメッセージ

docker-compose run web rails new . --force --no-deps --database=postgresqlを実行した際に、以下エラーメッセージが発生します。

Error response from daemon: OCI runtime create failed: container_linux.go:344: starting container process caused "exec: \"rails\": executable file not found in $PATH": unknown

そのため、手順通りdocker-compose buildを先に実行したのですが以下のエラーメッセージが発生します。

Step 5/13 : COPY Gemfile /myapp/Gemfile ERROR: Service 'web' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder067714777/Gemfile: no such file or directory

該当のソースコード

作業中のディレクトリ構成

Dockerfile Gemfile.lock entorypoint.sh Gemfiile docker-compose.yml

Dockerfile

1FROM ruby:2.5 2RUN apt-get update -qq && apt-get install -y nodejs postgresql-client 3RUN mkdir /myapp 4WORKDIR /myapp 5COPY Gemfile /myapp/Gemfile 6COPY Gemfile.lock /myapp/Gemfile.lock 7RUN bundle install 8COPY . /myapp 9 10# Add a script to be executed every time the container starts. 11COPY entrypoint.sh /usr/bin/ 12RUN chmod +x /usr/bin/entrypoint.sh 13ENTRYPOINT ["entrypoint.sh"] 14EXPOSE 3000 15 16# Start the main process. 17CMD ["rails", "server", "-b", "0.0.0.0"]

docker-compose.yml

docker

1version: '3' 2services: 3 db: 4 image: postgres 5 volumes: 6 - ./tmp/db:/var/lib/postgresql/data 7 web: 8 build: . 9 command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" 10 volumes: 11 - .:/myapp 12 ports: 13 - "3000:3000" 14 depends_on: 15 - db

Gemfile

1source 'https://rubygems.org' 2gem 'rails', '~>5'

entrypoint.sh

entrypoint.sh

1#!/bin/bash 2set -e 3 4# Remove a potentially pre-existing server.pid for Rails. 5rm -f /myapp/tmp/pids/server.pid 6 7# Then exec the container's main process (what's set as CMD in the Dockerfile). 8exec "$@"

Gemfile.lockは何も記述していません。

試したこと

以下の記事のAnswer1(ディレクトリの名前変更「mayapp」→「webapp」)を試しましたが同様のエラーが発生しました。
https://stackoverflow.com/questions/51200022/docker-copy-failed-to-find-gemfile-no-such-file-or-directory

補足情報(FW/ツールのバージョンなど)

バージョンは以下の通りです
Docker version 18.09.2, build 6247962
docker-compose version 1.23.2, build 1110ad01

どなたか解決方法をご教示いただけませんか?よろしくお願いいたします!!!

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

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

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

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

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

guest

回答1

0

ベストアンサー

Gemfiile

タイプミスされていますが、質問の際の転記ミスでしょうか、それとも実際のファイル名がミスってますでしょうか。

投稿2019/06/03 23:26

kazto

総合スコア7196

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

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

runes224

2019/06/04 03:47 編集

実際のファイル名をミスってます。出先から戻ったら、ファイル名修正して解決するか試してみます! ありがとうございます!
runes224

2019/06/05 19:21

解決しました!ありがとうございます!!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問