私はDockerの周りを頭で囲み、開発目的で使用する方法を検討しています。私はWindows 10環境で開発しています。基本的な質問があります.Nodejで開発を行うときに、.jsファイルを変更すると言うことができます。あなたはそれをホストマシン(Windowsマシン)上で変更してから、ドッカーコンテナにプッシュしますか、またはDockerコンテナ自体のファイルを変更しますか? Dockerコンテナのファイルを変更したらどうすればいいですか?Windows 10でのDockerでのNodejs開発
答えて
ホスト環境の快適さ(Windows 10または好きなもの)からソースコードを変更してから、COPY
をDockerfileでコンテナに送信します。特に、nodejsであなたは次のように使用することができます。
Dockerfile
FROM node:6
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
RUN npm install
COPY . /usr/src/app
# replace this with your application's default port
EXPOSE 8888
CMD [ "npm", "start" ]
をこの画像は、アプリケーションがその依存関係をリストアップし、そのstart scriptを定義するpackage.jsonという名前のファイルを持っていることを前提としています。最後に、あなたがドッカーイメージをビルドして実行することができます
+ my-nodejs-app
| -Dockerfile
| -package.json
| -server.js
| ...
:
$ cd my-nodejs-app
$ docker build -t my-nodejs-app .
$ docker run -it --rm --name my-running-app -p 8888:8888 my-nodejs-app
また、あなたがボリュームとしてあなたのソースディレクトリをマウントし、1つのCOMANDにすべてを減らすことができます(開発中に便利ステージ):
$ cd my-nodejs-app
$ docker run -it --rm --name my-running-script \
-v "$PWD":/usr/src/app -w /usr/src/app \
-p 8888:8888 node:6 npm install && node server.js
私の懸念は、開発中に非常に頻繁に起こるソースコードを変更するたびに、プロセス全体を再実行する必要があることです。これは扱いにくいようですが、簡単な方法はありませんか? – user3547774
ソースコードディレクトリをマウントしている一時的なコンテナを再起動するほうがずっと簡単です。上記の答えで詳細を見てください –
コードを使用してボリュームをマウントすると、処理が最適なので、procを実行しないでくださいエッセイ。
- 1. Windows 10アプリケーションの開発
- 2. Docker + Windows 10
- 3. Windows 10用DirectShow(Stream.h)開発
- 4. Windows用C#でのCordovaプラグインの開発8.1/Windows 10
- 5. Windows 10でWindows Phone 7.5アプリケーションを開発する
- 6. Windowsでの開発
- 7. Windows 10上のWindows Docker ContainerでJenkinsを実行するには?
- 8. Windows 10のモバイルアプリケーション開発 - デバイス間で情報を共有する
- 9. Docker for Windows 10ホストマシンへのアクセス方法
- 10. ウィンドウストア10ユニバーサルアプリケーション開発
- 11. Docker開発ワークフロー
- 12. Windows用DockerがWindows 10でネットワークを殺すBootcamp
- 13. Linux、WindowsでのiPhone開発
- 14. Windows 7でのSharePoint開発
- 15. Docker for WindowsはWindows 10の企業評価でデータベースにアクセスできない
- 16. WindowsからWindows 10用ユニバーサルアプリケーションを開発する8.1
- 17. Windows Server 2016 DatacenterまたはWindows 10 for .NET Web開発
- 18. Windows上でのWindows Phone開発
- 19. VirtualBox 5.1.8でWindows 10でdockerを起動できないr11374
- 20. iOS、Android、Windows 10のモバイルエミュレータは、Visual Studio 2015でXamarin.Formsを開発できますか?
- 21. Macでのネイティブ開発WindowsでのDragonfire SDK - iPhone開発
- 22. Docker開発環境のリッチエディタ
- 23. のMicrosoft .NET Framework 4.6.2開発者向けパックのWindows 10ビルド1607
- 24. 開き、Windows SDKのコマンドプロンプトは、Windows 10
- 25. Docker開発版/スナップショット
- 26. Linux開発用+ Docker
- 27. のWindows 10は、Windows 10ではバッチファイル
- 28. Windows 10 for iis 10でプロジェクトを開始できません
- 29. "Movies&TV"(windows 10)でビデオファイルを開く
- 30. Windows 10でCVを開きます
編集:Windows 10固有の回答が必要なようです。 DockerはLinux指向の技術です。 'docker run'には' -v/path/to/host/file:/ path/in/container'というコマンドラインスイッチがあり、ホスト上のディレクトリをそれらのパスのコンテナに表示することができます。しかし、許される技術的な魔法は、WindowsではなくLinuxで起こっているようです。したがって、WindowsでDockerを実行する場合、通常、実際のdockerサーバーとコンテナを実行するLinux VMを設定する必要があります。そして、より新しいデベロップメントを避けて、 '-v'を使うときにファイルが必要と思われる場所です。 – Paul
@Paul - 彼の質問には何が関係しているのか分かりません。これはNode.js-Docker固有のものであり、Windowsではないものです。それは関連する場合にOPに言及するのは良いことですが、それは実際にプライマリではない接線の問題です。 – ldg
開発のためのこの非常に奇妙なセットアップ(ホストで開発するのではなく、ドッカーでテストする)があれば、どこでも変更して好きな場所にプッシュすることができます。特定の目標を念頭に置いてください。これらの設定では、実際にコンテナを単独の開発プラットフォームとして実行していますが、コンテナ内でのプッシュの仕方がわからないため、これはおそらく設定ではありません。それ以外の場合は、ホストの変更、コンテナのデプロイ、テスト、繰り返し、ホストのプッシュなどです。 –