因此,我試圖讓Docker在我們公司的發佈工作流程中採用,所以我必須使用docker和我想要合併的所有技術來生成項目。Dockerfile COPY文件沒有在VOLUME上顯示
我已經創建了一個Dockerfile來構建我們的VM環境,除了最後幾步之外,一切工作都正常。
我將在我的機器上使用我們的標準化Docker LEMP堆棧,當我爲該項目構建映像時,它會在我的/ documents/kitematic/image_name中創建一個新的掛載卷,我們將在其中啓動一個git repo 。
因此,我想使用COPY或添加將所有dockerfiles複製到新的Docker卷中,以便它包含在git repo中以跟蹤更改,並且使開發人員可以更輕鬆地克隆repo build並去。
的Dockerfile的最後一部分是
# Create Mounted Folders
RUN mkdir /$SMACK_APP_VOL_DIR && \
mkdir /$SMACK_APP_VOL_DIR/www && \
mkdir /$SMACK_APP_VOL_DIR/docker_stack
# set owners of web folders before mounting
RUN usermod -u 1000 www-data
# set folder groups
RUN chown -Rf www-data:www-data /$SMACK_APP_VOL_DIR
# Mount folders
VOLUME ["/$SMACK_APP_VOL_DIR/www","/$SMACK_APP_VOL_DIR/docker_stack/"]
# Expose Ports
EXPOSE 443
EXPOSE 80
# Add git commands to allow container updating
ADD ./docker_stack/pull /usr/bin/pull
ADD ./docker_stack/push /usr/bin/push
RUN chmod 755 /usr/bin/pull && chmod 755 /usr/bin/push
# Supervisor Config
ADD ./docker_stack/confs/supervisord.conf /etc/supervisord.conf
# Start Supervisord
ADD ./docker_stack/start.sh /start.sh
# nginx site conf
RUN rm -Rf /etc/nginx/sites-available/*
ADD ./docker_stack/confs/default.conf /etc/nginx/sites-available/
# Copy docker project to folder for inclusion to GIT repo
ADD ./docker_stack/ /mounted/docker_stack
CMD ["/bin/bash", "/start.sh"]
在我的本地文件夾,以便docker_stack是在泊塢窗文件,我原來使用的添加一個環境變量$ SMACK_APP_VOL_DIR和閱讀具有ENVS問題的人和ADD/COPY這樣硬編碼安裝路徑。它仍然在犯規移動docker_stack目錄,但如果我這樣做
ADD ./docker_stack/ /home
它並把它複製到/ home目錄,但如果我嘗試將/ home轉移到卷中的文件是不是在我的本地機器上顯示。
任何幫助,不勝感激