私のドッカー作成では、ローカルフォルダをDockerのフォルダにマウントしています。マウントされたボリュームをDockerfileのCMDで確認して使用できますが、RUNでは使用できません。 RUNはドキュメントから完全にクリーンなレイヤーのようです。 RUNでdocker-composeファイルで指定されたマウントポイントを使用できるようにする方法はありますか?ドッカーラン層にマウントされているボリュームがありません
0
A
答えて
1
docker
自体、docker-compose
、その他のツールを使用するかどうかにかかわらず、docker build
プロセス中にボリュームをマウントすることはできません。考えられるのは、ビルドプロセスはできるだけ環境に依存していると考えられているため、結果のイメージはローカルシステムに依存しないため、より簡単に共有することができます。
一般的に、ビルドプロセスにデータを公開する必要がない、解決しようとしている問題に接近する代替方法があります。
1
は、実際には、新しいレイヤーを作成するために実行するコマンドを提供するために使用されるコンテナ RUN
を起動したときに実行され、引数またはコマンドを提供するために使用されCMD
と
CMD
RUN
の間には大きな違いがあります。
要するに、ビルドステップ(RUN
が実行されているとき)ではボリュームが利用できません。ビルドステップで
- は、コンテキストが渡されます。
ドッカーコンテナは、「外部」ファイルを提供する2つの方法があります。
- 実行ステップでは、コンテナレイヤ+ボリュームが使用されます。
CMD
を参照してください:
- https://docs.docker.com/engine/reference/builder/#cmd
- https://docs.docker.com/engine/reference/builder/#entrypoint
はRUN
を参照してください:
は参照:
関連する問題
- 1. Dockerでマウントされているボリュームにログを書き込めません
- 2. Dockerボリュームがファイルをマウントしていません
- 3. Kubernetes:hostPathボリュームがマウントされない
- 4. ドッカーボリュームがマウントされていません
- 5. golangマウント名前空間:マウントされたボリュームは、プロセスが終了してもクリアされません。
- 6. 階層化されたファイルシステムとボリュームのマウント
- 7. ドッカーでボリュームをマウントできません
- 8. マウントされたボリュームは、コンテナ
- 9. マウントされたボリュームは
- 10. Windows上でマウントされていないボリュームを検出する
- 11. ドッカーコンテナは、起動時にマップされたボリュームの内容をマウントしません
- 12. マウントされたボリュームはドッカーのイメージ内容で埋められません
- 13. Dockerボリュームのマウントが存在しません
- 14. Dockerホストの再起動後にボリュームがマウントされない
- 15. ボリュームがコンテナにリンクされていません
- 16. awsポリシーにebsボリュームが添付されていません
- 17. /etc内のボリュームにシークレットをマウントできません。
- 18. EBSボリュームをUbuntu EC2にマウントできません
- 19. ボリュームがOS Xにマウントされたことを検出する
- 20. Docker(Windows用)でボリュームがマウントされない
- 21. Cドライブにフォルダをマウントすることができませんボリューム
- 22. Docker:デバイスcgroupがマウントされていません(Ubuntu 16.04)
- 23. nfsファイル共有がマウントされていません
- 24. Reactネイティブコンポーネントがマウントされていません
- 25. マウントされたdocker.sockログインは保存されていません
- 26. docker-composeでボリュームをマウントできません
- 27. anabled-containerは私のボリュームをマウントしません
- 28. dtrussにDYLD_BIND_AT_LAUNCHがあり、OSX 10.9にsshfsがマウントされていますか?
- 29. Docker Container内のマウントされたボリュームにフォルダをコピーします。
- 30. ドッカーコンテナに外部ボリュームをマウント