問題
Docker で新しいコンテナーを開始するときに、ボリュームをマウントして、ホスト マシン上の任意のファイルに最新の更新を取得し、コンテナーでそれらを操作できるようにしたいと考えています。ただし、私が見つけたのは、イメージをビルドするときに Docker がボリュームをマウントしていることです。代わりに、新しいコンテナーを作成するときにボリュームをマウントする必要があります。
私は Docker を使用して開発環境を管理しているため、コードの一部を更新するたびに、開発環境の Dockerイメージを再構築する必要があり、これには通常 20 ~ 30 分かかります。明らかに、これは私が Docker に求めている機能ではありません。
開発環境コンテナーを構築するために使用しているものは次のとおりです。
Dockerfile
# This docker file constructs an Ubuntu development environment and configures the compiler/libs needed
FROM ubuntu:latest
ADD . /gdms-rcon/liaison
WORKDIR /gdms-rcon/liaison
RUN rm -rf ./build
RUN apt-get update
RUN apt-get install -y -f gcc g++ qtbase5-dev cmake mysql-client
fig.yml
liaison:
build: ./liaison/
command: /bin/bash
volumes:
- liaison:/gdms-rcon/liaison
working_dir: /gdms-rcon/liaison
fig.yml
また、ビルドを簡単にするためにファイルを使用します。
実行するには、次を使用します。fig build
コンテナーにアクセスしてソース コードをコンパイルするには、次を使用します。docker run -it <container_id>
多分私は私のコマンドで何か間違ったことをしていますか? fig up
インタラクティブなシェルが得られないため、使用しませんdocker run -it <container_id>
。代わりに使用します。ボリュームを自動的にマウントするように使用fig
することにしましたが、期待どおりに機能しません。