2016-04-30 2 views
0

、両方Dockerfiledocker-compose.ymlファイルは、このように、/codeとして.を追加します。開発環境にある場合にのみ、ドッカーで作成するボリュームをどのように接続できますか?ドッキングウィンドウ・コンドキュメントの<a href="https://docs.docker.com/compose/django/" rel="nofollow">quickstart: Compose and Django</a>ページで

ADD . /code/

そして、いくつかの行以降:

web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code

これは、開発中にイメージを再構築する必要がなくなり、docker build t彼のイメージはすでにソースコードで構築されているので、プロダクションでは単にコンテナを取得するためにdocker runを実行するだけです。あれは正しいですか?

質問があれば、docker-compose.ymlを作成して、ボリュームを接続するか、実動スタックと開発スタックのどちらを作成するかに基づいてボリュームを接続しないでください。

答えて

2

この質問を投稿してから、私はこれを行う方法に関するヒントを持ったページに来ました。

  1. ボリュームを接続するdocker-compose.ymlを定義します。しかし、Dockerfileには、元のADDまたはCOPY命令がそのまま残ります。
  2. 開発システムと本稼働システムの類似点を含まないproduction.ymlファイルも定義します。ただし、運用環境で変更したい変更が含まれています。例えば、volumesセクションでは、おそらくこのようになります:今

    volumes: {}

、本番でdocker-composeを実行すると、あなたはこのようにそれを実行します。

$ docker-compose -f docker-compose.yml -f production.yml up

ここにあります参考のためUsing Compose in Productionへのリンク。

関連する問題

 関連する問題