因此,我试图让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转移到卷中的文件是不是在我的本地机器上显示。
任何帮助,不胜感激