次のDockerfileを使用して、 Docker Desktop for Windowsバージョン 17.03を実行している Windows 10 デスクトップの Windows コンテナーで Jenkins を実行するコンテナーを作成しています。
FROM microsoft/windowsservercore
RUN powershell -Command wget 'http://javadl.oracle.com/webapps/download/AutoDL?BundleId=210185' -Outfile 'C:\jreinstaller.exe' ; Start-Process -filepath C:\jreinstaller.exe -passthru -wait -argumentlist "/s,INSTALLDIR=c:\Java\jre1.8.0_91" ; del C:\jreinstaller.exe
ENV JAVA_HOME c:\\Java\\jre1.8.0_91
RUN setx PATH %PATH%;%JAVA_HOME%\bin
CMD [ "java.exe" ]
この docker ファイルからイメージを作成します。
docker build -t windows-java:jre1.8.0_91 .
これの上にJenkinsをインストールするために使用している2番目のDockerfile:
FROM windows-java:jre1.8.0_91
ENV HOME /jenkins
ENV JENKINS_VERSION 2.58
RUN mkdir \jenkins
RUN powershell -Command "wget -Uri https://updates.jenkins-ci.org/latest/jenkins.war -UseBasicParsing -OutFile /jenkins/jenkins.war"
EXPOSE 8080
EXPOSE 50000
CMD java -jar C:\\jenkins\\jenkins.war
docker build -t jenkins-windows:2.0 .
次に、次のようにコンテナを起動します。
docker run --name jenkinsci -p 8080:8080 -p 50000:50000 jenkins-windows:2.0
コンテナが正常に動作し、ログがすべて正常に表示されていることがわかります
PS C:\Users\mandeep\ringba\ringba-jenkins-setup-windows\jenkins-master> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
85ba2ef525a1 jenkins-windows:2.0 "cmd /S /C 'java -..." 8 hours ago Up 8 hours 0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp jenkinsci
http://localhost:8080
しかし、ホスト マシンの Web ブラウザーで実行されている jenkins サーバーにアクセスできません。
それが役立つかどうかはわかりませんが、同じマシンでドッカーをモードで実行していたときに
、公式のドッカー イメージを使用してLinux container
jenkins サーバーにアクセスできました。http://localhost:8080