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

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

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

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

Yarn

Yarnは、Facebook/Exponent/Google/Tildeが開発したJavaScriptのパッケージマネージャ。npmよりもインストールが速く、厳密にモジュールのバージョンを固定できるなど、npmの問題を解決。npmと互換性があり、同じpackage.jsonを使用できます。

Ruby

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

Ruby on Rails 6

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

Docker

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

Q&A

解決済

1回答

6383閲覧

既存のrails6アプリでdocker環境上にyarn

tky106

総合スコア3

docker-compose

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

Yarn

Yarnは、Facebook/Exponent/Google/Tildeが開発したJavaScriptのパッケージマネージャ。npmよりもインストールが速く、厳密にモジュールのバージョンを固定できるなど、npmの問題を解決。npmと互換性があり、同じpackage.jsonを使用できます。

Ruby

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

Ruby on Rails 6

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

Docker

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

0グッド

0クリップ

投稿2020/06/04 08:39

前提・実現したいこと

既存のRails6アプリケーションでdockerを使った環境構築をする際にyarnをインストールしたい。

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

docker compose up 実行時にyarnがインストールされていないためrails sが実行できないと言われるのでDockerfileにyarnインストールのためのあらゆる記述をしてdocker compose buildを試したのですが~~not foundなどのエラーが出てしまい、実行できません。

エラーメッセージ

/bin/sh: 1: yarn: not found

/bin/sh: 1: sudo: not found

/bin/sh: 1: brew: not found

SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
...
Yarn was installed, but doesn't seem to be working :(.

debconf: delaying package configuration, since apt-utils is not installed

/bin/sh: 1: apt-transport-https: not found

E: The method driver /usr/lib/apt/methods/https could not be found.
E: Failed to fetch https://dl.yarnpkg.com/debian/dists/stable/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.

該当のソースコード

Dockerfile

1FROM ruby:2.5.1 2RUN apt-get update && apt-get install -y nodejs --no-install-recommends && rm -rf /var/lib/apt/lists/* 3RUN apt-get update && apt-get install -y mysql-client --no-install-recommends && rm -rf /var/lib/apt/lists/* 4#RUN apt-get update -qq && apt-get install -y build-essential nodejs 5RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \&& apt-get install apt-transport-https -y\ 6 && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \ 7 && apt-get update -qq \ 8 && apt-get install -y nodejs yarn \ 9RUN mkdir /application 10WORKDIR /application 11RUN brew install yarn 12ADD Gemfile /application/Gemfile 13ADD Gemfile.lock /application/Gemfile.lock 14RUN bundle install 15ADD . /application 16~ 17~

dockercomposeyml

1version: '3' 2services: 3 db: 4 image: mysql 5 environment: 6 MYSQL_ROOT_PASSWORD: password 7 MYSQL_DATABASE: root 8 ports: 9 - '3306:3306' 10 volumes: 11 - mysql-data:/var/lib/mysql/data 12 web: 13 build: 14 context: . 15 dockerfile: Dockerfile 16 command: bundle exec rails s -p 3000 -b '0.0.0.0' 17 tty: true 18 stdin_open: true 19 depends_on: 20 - db 21 ports: 22 - "3000:3000" 23 volumes: 24 - .:/application 25volumes: 26 mysql-data: 27 driver: local 28~

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

ruby 2.5.1

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

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

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

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

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

guest

回答1

0

ベストアンサー

投稿2020/06/04 09:25

gentaro

総合スコア8947

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

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

tky106

2020/06/04 10:49

ありがとうございます、おかげさまで解決しました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問