如何在Jenkins Docker Container中安装Azure App Service存储?

时间:2018-03-10 18:25:45

标签: azure docker jenkins azure-web-sites

我试图在Azure App Service的Docker容器中托管Jenkins。这意味着它的' linux'托管。

默认情况下,jenkins / jenkins-2.110-alpine Docker image将其数据存储在容器的/ var / jenkins_home文件夹中。我希望这个数据/配置持久保存到Azure持久存储,以便它可以在容器重启时保持不变。

我已阅读documentationblogs,声明如果容器数据存储在/ home文件夹中,则可以保留容器数据。

所以我已经将Jenkins Dockerfile定制为这样......

FROM jenkins/jenkins:2.110-alpine

USER root
RUN mkdir /home/jenkins
RUN ln -s /var/jenkins_home /home/jenkins
USER jenkins

但是,当我部署到Azure App Service时,我在/ home文件夹中看不到该文件(在Kudu控制台中查看)。应用程序启动很好,但是当我重新启动容器时,我丢失了所有数据。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

这是预期的,因为您仅在Azure主机上保留符号链接(ln -s /var/jenkins_home /home/jenkins)。所有文件实际上都存在于容器内。 为此,您必须实际更改Jenkins配置,以将所有数据存储在您在上面的/home/jenkins中已经创建的Dockerfile中。

快速搜索Jenkins data folder意味着您将环境变量JENKINS_HOME设置为目录。 在您的Dockerfile中:

ENV JENKINS_HOME /home/jenkins