ソリューションの回避策
ENV変数に基づいてサーバーにFOLDERをコピーする必要がありました。空のサーバーイメージを取得しました。ローカルフォルダーに必要な展開フォルダー構造を作成しました。次に、DockerFileの下の行に追加して、フォルダーをコンテナーにコピーします。I nは最後の行は、ドッキングウィンドウには、サーバを起動する前に初期化file.shを実行するためのエントリポイントを追加しました。
#below lines added to integrate testing framework
RUN mkdir /mnt/conf_folder
ADD install /mnt/conf_folder/install
ADD install_test /mnt/conf_folder/install_test
ADD custom-init.sh /usr/local/bin/custom-init.sh
ENTRYPOINT ["/usr/local/bin/custom-init.sh"]
次に、以下のようなスクリプトを使用して、ローカルにcustom-init.shファイルを作成し ます
#!/bin/bash
if [ "${BUILD_EVN}" = "TEST" ]; then
cp -avr /mnt/conf_folder/install_test/* /mnt/wso2das-3.1.0/
else
cp -avr /mnt/conf_folder/install/* /mnt/wso2das-3.1.0/
fi;
でドッキングウィンドウ・コンライン下のファイル。
環境:-BUILD_EVN = TEST
これらの変更により、Dockerのビルド中にフォルダーがコンテナーにコピーされます。docker-compose upを実行 すると、サーバーが起動する前に実際に必要なフォルダーをサーバーにコピーまたはデプロイします。