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

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

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

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

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Docker

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

Q&A

1回答

2183閲覧

Docker-Compose | コンテナにコード更新が反映されない場合の対応

退会済みユーザー

退会済みユーザー

総合スコア0

docker-compose

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

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Docker

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

0グッド

0クリップ

投稿2019/03/03 11:16

編集2019/03/04 12:06

困ってること

docker-composeで開発をしています。
ファイル更新時、コンテナに反映されないことがあります。

  • ファイル更新が反映される時と反映されない時の差および原因
  • ファイル反映がされなかった場合の対応

とりわけ後者について考えており、助言をいただきたく考えています。

backend-api_1 | [nodemon] restarting due to changes... backend-vrn_1 | [nodemon] restarting due to changes... backend-api_1 | [nodemon] starting `npm run inspect-api` backend-vrn_1 | [nodemon] starting `npm run inspect-vrn` backend-web_1 | [nodemon] restarting due to changes... backend-web_1 | [nodemon] starting `npm run inspect-web` backend-vrn_1 | > backend@0.0.1 inspect-vrn /docker/backend backend-vrn_1 | > kill-port 53002 && node --inspect=0.0.0.0:53002 ./app.js backend-api_1 | > backend@0.0.1 inspect-api /docker/backend backend-api_1 | > kill-port 53000 && node --inspect=0.0.0.0:53000 ./app.js backend-api_1 | Process on port 53000 killed backend-vrn_1 | Process on port 53002 killed backend-vrn_1 | Starting inspector on 0.0.0.0:53002 failed: address already in use backend-api_1 | Starting inspector on 0.0.0.0:53000 failed: address already in use backend-vrn_1 | npm ERR! code ELIFECYCLE backend-vrn_1 | npm ERR! errno 12 backend-vrn_1 | npm ERR! backend@0.0.1 inspect-vrn: `kill-port 53002 && node --inspect=0.0.0.0:53002 ./app.js` backend-vrn_1 | npm ERR! Exit status 12 backend-vrn_1 | npm ERR! backend-vrn_1 | npm ERR! Failed at the backend@0.0.1 inspect-vrn script. backend-vrn_1 | npm ERR! This is probably not a problem with npm. There is likely additional logging output above. backend-api_1 | npm ERR! code ELIFECYCLE backend-api_1 | npm ERR! errno 12 backend-api_1 | npm ERR! backend@0.0.1 inspect-api: `kill-port 53000 && node --inspect=0.0.0.0:53000 ./app.js` backend-api_1 | npm ERR! Exit status 12 backend-api_1 | npm ERR! backend-api_1 | npm ERR! Failed at the backend@0.0.1 inspect-api script. backend-api_1 | npm ERR! This is probably not a problem with npm. There is likely additional logging output above. backend-vrn_1 | backend-vrn_1 | npm ERR! A complete log of this run can be found in: backend-vrn_1 | npm ERR! /docker/backend/.npm/_logs/2019-03-01T09_35_12_134Z-debug.log backend-api_1 | backend-api_1 | npm ERR! A complete log of this run can be found in: backend-api_1 | npm ERR! /docker/backend/.npm/_logs/2019-03-01T09_35_12_141Z-debug.log backend-api_1 | [nodemon] app crashed - waiting for file changes before starting... backend-vrn_1 | [nodemon] app crashed - waiting for file changes before starting...

現状の解決策

今は全てのコンテナをビルドし、起動をしています。

$ docker-compose-build docker-compose-up ##: すべてのサービスをビルドして起動

全てビルドをしているので、かなり時間がかかってしまいます

お尋ねしたいこと (1)

しかしエラーが起きてそうなコンテナが backend-vrn_1backend-api_1なので、
これらのみビルドして起動する方法をお尋ねしたいです。

お尋ねしたいこと (2 - 任意)

(こちらは任意です)
上記エラーログ、とりわけ原因となってそうなことや、ELIFECYCLEなどの意味をご存知でしたらご教授をお願いします。

backend-vrn_1 | Starting inspector on 0.0.0.0:53002 failed: address already in use backend-api_1 | Starting inspector on 0.0.0.0:53000 failed: address already in use backend-api_1 | npm ERR! code ELIFECYCLE backend-api_1 | npm ERR! errno 12 backend-api_1 | npm ERR! backend@0.0.1 inspect-api: `kill-port 53000 && node --inspect=0.0.0.0:53000

補足

Mac/Nodejs

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

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

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

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

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

guest

回答1

0

コードが存在しないので、回答として成立しているか不安です。

部分ビルドの方法

次のようにコマンドを発行することで一部のコンテナのみをビルドすることが可能です。

docker-compose build backend-vrn

backend-vrndocker-compose.yml のサービス名(services直下のラベル)です。
複数を指定することも可能です。

反映されないときの対応

ファイルが反映さないということですが、
Dockerfile等で対象のファイルをADDまたはCOPYしているのでしょうか。
ビルドなしで、upを行うと、反映されないことがあります。
このとき、一度コンテナを削除してから実行する等の方法をとります。
※未確認ですがvolumeは保全されるはずです

docker-compose rm -v backend-vrn

高頻度で書き換えを行う場合はvolumesでローカルのディレクトリ等をmountしてしまうのが手っ取り早いかもしれません。

エラーログについて

nodejsは全く触れたことがないのですが、ポートがすでに使用されているというエラーが起きているようです。
これは致命的なエラーのように思うのですが、何か思い当たるところはありますでしょうか。

backend-vrn_1 | Starting inspector on 0.0.0.0:53002 failed: address already in use backend-api_1 | Starting inspector on 0.0.0.0:53000 failed: address already in use

投稿2019/03/22 19:17

testset

総合スコア221

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問