Tag: build立

如何通过Artifactory API获取dockerTag标签?

我正在使用Artifactory版本4.16.0,需要检索用于使用Artifactory API标记我的图像的Docker信息标签 。 在标签键值部分中的Docker信息面板下的Artifactory UI中,该标签是明确设置的。 使用下面的API我可以看到manifest.json curl -uadmin:pass https://artifacts.mycompany.com/artifactory/api/storage/my-docker-dev/my-component/my-image-1.0.0-1498449060 但是这不包含我之后的Docker标签。 我阅读文档,但无法弄清楚如何实现这一目标。

我如何cachingDocker多阶段构build层中的Maven依赖和插件?

我想将Maven依赖关系caching在我的Docker Multi Stage Build的构build阶段的一层中。 我的Dockerfile如下所示: FROM maven:3-jdk-8 as mvnbuild RUN mkdir -p /opt/workspace WORKDIR /opt/workspace COPY pom.xml . RUN mvn -B -s /usr/share/maven/ref/settings-docker.xml dependency:resolve COPY . . RUN mvn -B -s /usr/share/maven/ref/settings-docker.xml package FROM openjdk:8-jre-alpine … “` 我基于Docker Multi Stage Build博客文章中提供的示例( 也在Github上提供 )基于此Dockerfile。 当我运行构build,而不是看到依赖下载一次的dependency:resolve ,然后由package重用,我看到两个步骤下载的依赖关系。 有没有人得到这个工作? 我在这里做错了什么?

使用apt-get build depm最小化Docker镜像

有时候在构buildDocker镜像时,有必要使用apt-get 。 例如,用于运行Magento的图像可能会像这样启动 FROM php:5.4-apache RUN apt-get -qqy update \ && apt-get -qqy install git \ libmcrypt-dev \ libpng12-dev \ libxml2-dev \ libxslt-dev \ && docker-php-ext-install bcmath \ gd \ mcrypt \ mysql \ soap \ xsl \ zip 但是现在我拥有那些apt-get命令带来的所有垃圾。 更糟的是,我甚至不知道我能够删除什么,因为大概是PHP库是dynamic链接的。 我正在考虑沿线等 有没有办法在docker-php-ext-install静态链接php库文件,这样我就可以将所有的apt-get删除了? 如何删除apt-get update留下的数据? 但这些只是XY的问题 。 我真正的问题只是 我如何构build更小的Docker镜像,而不必将Dockerfile中的apt-get的易用性和可维护性放在一起?

jenkinsdocker安装程序

我正在使用Jenkins来构build项目,但是现在我的客户想要在Docker镜像中进行构build。 我已经在服务器上安装了172.0.0.1:PORT并在172.0.0.1:PORT上运行。 我已经安装了Docker插件,并将此TCP URL分配给Docker URL。 我也创build了一个名为jenkins-1的图像在configure项目中,我使用Build with Docker Container构build环境Build with Docker Container并提供图像名称。 然后在Build中放入Execute Shell ,然后Build 但它给错误: Pull Docker image jenkins-1 from repository …` $ docker pull jenkins-1` Failed to pull Docker image jenkins-1` FATAL: Failed to pull Docker image jenkins-1` java.io.IOException: Failed to pull Docker image jenkins-1“ at com.cloudbees.jenkins.plugins.docker_build_env.PullDockerImageSelector.prepare DockerImage(PullDockerImageSelector.java:34)` at com.cloudbees.jenkins.plugins.docker_build_env.DockerBuildWrapper.setUp(DockerB`uildWrapper.java:169)` at hudson.model.Build$BuildExecution.doRun(Build.java:156)` at […]

我试图从Dockerfile执行mvn安装,但它不工作,说mvn没有find

我正在尝试执行“mvn install”从Dockerfile创buildwar文件。 贝娄是Dockerfile FROM scratch FROM ubuntu:16.04 RUN mkdir /opt/java8 RUN mkdir /opt/tomcat8 RUN mkdir /opt/maven3 ENV JAVA_HOME /opt/java8 ENV CATALINA_HOME /opt/tomcat8 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$M2_HOME/bin ADD jdk1.8.0_112 /opt/java8 ADD apache-tomcat-8.0.38 /opt/tomcat8 WORKDIR /home/veni/git/M_UserTP RUN mvn install WORKDIR /home/veni/git/M_UserTP/target RUN mv M_UserTP.war /home/veni/Documents/dhaval_bhoot/docker_images/tomcat1 ADD M_UserTP.war /opt/tomcat8/webapps EXPOSE 8080 CMD ["catalina.sh", "run"] 我还在PATH环境variables中添加了maven的bin目录的path。 PATH =在/ usr / […]

设置泊坞窗图像的名称

在docker构build过程中,我忘记了包含一个名称标签。 我现在有图像ID,我怎么给它命名? 我使用的文件,但我仍然不知道是否有可能。 https://docs.docker.com/engine/reference/commandline/image_tag/#usage 我做了泊坞窗图像ID New_name

docker build`尝试安装ubuntu软件包失败

试图build立一个简单的Ubuntu的Apache Web服务器docker的形象,我得到一个错误,而dockerbuild设命令尝试安装包。 我正在使用Docker中的Ubuntu基本映像来执行此操作。 以下是我的Dockerfile中的代码; FROM ubuntu RUN apt-get update RUN apt-get install apache2 RUN apt-get install apache2-utils RUN apt-get clean EXPOSE 80 CMD ["apache2ctl", "-D", "FOREGROUND"] 我的主机操作系统是Mac OSX El Capitan,并且在构build失败时得到的错误是; The command '/bin/sh -c apt-get install apache2' returned a non-zero code: 1 和我的dockerbuild设命令是; docker build -t="webserver" . 请任何帮助。 提前致谢。

如何减lessdocker image安装依赖关系所需的时间?

我有一些节点docker集装箱,基本上看起来像: # core nodejs just installs node and git on archlinux FROM core/nodejs # clones directory into current working dir RUN git clone https://github.com/bodokaiser/nearby . # installs all dependencies RUN npm install # lets node execute the source code CMD ["node", "index.js"] 当我现在重build图像以便收集新的更新时,它会从npm下载所有依赖关系。 这总是需要大约5分钟。 我现在想知道如何避免重新安装所有的依赖关系。 我到目前为止的一个想法是使用VOLUME ,然后与主机共享代码存储库,这将使其很难在其他主机上使用该映像。 更新:我有另一个想法是创build一个容器容器,其中包含一个git仓库,并与运行时容器共享。 但是,回购容器必须能够以某种方式重build其他容器?

如何加快谷歌云平台上的bazel构build

我正在使用gcr.io/cloud-builders/bazel在Google容器构build上构build我的图像。 从日志看来,似乎大部分时间都是为bazel设置工作区。 这个工作空间不会从构build变成构build,所以我认为可以预先计算并存储在一个新的图像。 如何加快Google云端平台上的这些bazel版本? Already have image (with digest): gcr.io/cloud-builders/bazel Extracting Bazel installation… …………………… Loading: Loading: 0 packages loaded Loading: 0 packages loaded Loading: 0 packages loaded Loading: 0 packages loaded Loading: 0 packages loaded WARNING: /builder/home/.cache/bazel/_bazel_root/eab0d61a99b6696edb3d2aff87b585e8/external/io_bazel_rules_go/go/def.bzl:137:3: DEPRECATED: com_github_golang_protobuf : new_go_repository is deprecated. Please migrate to go_repository soon. WARNING: /builder/home/.cache/bazel/_bazel_root/eab0d61a99b6696edb3d2aff87b585e8/external/io_bazel_rules_go/go/def.bzl:137:3: DEPRECATED: com_github_golang_glog : new_go_repository is […]

Docker映像初始文件系统从哪里来?

我在https://github.com/pypa/manylinux查看manylinux1股票图像构build脚本,特别是调用链: .travis.yml <…> script: – docker build –rm -t quay.io/pypa/manylinux1_$PLATFORM:$TRAVIS_COMMIT -f docker/Dockerfile-$PLATFORM docker/ docker/Dockerfile-<arch> : COPY build_scripts /build_scripts RUN bash build_scripts/build.sh docker/build_scripts/build.sh : <a bunch of variables> sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf <…> 该脚本假定已经存在基本的CentOS 5文件系统(例如/etc/yum )。 它从何而来? 我没有看到任何关于股票图像的引用,或者从某处下载它或使用安装ISO的任何内容。 代码库中的任何地方都没有/etc etc。