私有仓库已经搭建好了,先讲解下环境 我的docker registry在mesos slave 上,也就是之前的 可以看到私有的仓库里面已经有了3个镜像,这次我们要使用jenkins这个镜像,这个镜
私有仓库已经搭建好了,先讲解下环境
我的docker registry在mesos slave 上,也就是之前的
可以看到私有的仓库里面已经有了3个镜像,这次我们要使用jenkins这个镜像,这个镜像主要包含了JAVA环境和一个tomcat工程,工程的webapps下是没有东西的
现在我在私有仓库的机器上删除所有的镜像和容器
root@web2:/opt/dockerfiles# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEroot@web2:/opt/dockerfiles# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
看看我的Dockerfile
root@web2:/opt/dockerfiles# pwd/opt/dockerfilesroot@web2:/opt/dockerfiles# lsDockerfile jenkins.warroot@web2:/opt/dockerfiles# more Dockerfile FROM 172.16.126.129/jenkinsMAINTAINER jastme#RUN apt-get install sysstat -y##RUN apt-get install -y build-essential##RUN apt-get install -y software-properties-common##RUN apt-get install -y byobu curl git htop man unzip vim wgetCOPY jenkins.war /ywkj/tomcat/webapps/jenkins.warENV JAVA_HOME=/opt/jdk1.7ENV CLASSPATH=.:/opt/jdk1.7/lib/dt.jar:/opt/jdk1.7/lib/tools.jarENV PATH $JAVA_HOME/bin:$CLASSPATH:$PATHEXPOSE 8080ENTRYPOINT /ywkj/tomcat/bin/startup.sh && tail -F /ywkj/tomcat/logs/catalina.out
开始构建镜像
我们构建一个REPOSITORY为jenkins tag为test的镜像
root@web2:/opt/dockerfiles# docker build -t="jenkins:test" .Sending build context to Docker daemon 69.02 MBSending build context to Docker daemon Step 0 : FROM 172.16.126.129/jenkinsPulling repository 172.16.126.129/jenkins0f90f20ed759: Download complete 58488e45273c: Download complete 25810b66099e: Download complete 6571ba684f54: Download complete 6ed49a73d8f0: Download complete c53777cbfc31: Download complete 56465e1e45d2: Download complete 9525990c1a59: Download complete 4b16211c9344: Download complete Status: Downloaded newer image for 172.16.126.129/jenkins:latest ---> 0f90f20ed759Step 1 : MAINTAINER jastme ---> Running in 249047b08222 ---> 83c9d1880cbfRemoving intermediate container 249047b08222Step 2 : COPY jenkins.war /ywkj/tomcat/webapps/jenkins.war ---> 8ddb8a0d43d0Removing intermediate container df861980347cStep 3 : ENV JAVA_HOME /opt/jdk1.7 ---> Running in 8d769e747d0f ---> 9612f02f92a0Removing intermediate container 8d769e747d0fStep 4 : ENV CLASSPATH .:/opt/jdk1.7/lib/dt.jar:/opt/jdk1.7/lib/tools.jar ---> Running in 5a7e0eb0589d ---> 5cbeba873965Removing intermediate container 5a7e0eb0589dStep 5 : ENV PATH $JAVA_HOME/bin:$CLASSPATH:$PATH ---> Running in df35ac988bd3 ---> a2d882bbae0fRemoving intermediate container df35ac988bd3Step 6 : EXPOSE 8080 ---> Running in 0af2fd672296 ---> 2074c2b72310Removing intermediate container 0af2fd672296Step 7 : ENTRYPOINT /ywkj/tomcat/bin/startup.sh && tail -F /ywkj/tomcat/logs/catalina.out ---> Running in 4115910e5c92 ---> 285b7399d473Removing intermediate container 4115910e5c92Successfully built 285b7399d473root@web2:/opt/dockerfiles# docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEjenkins test 285b7399d473 22 seconds ago 720.1 MB172.16.126.129/jenkins latest 0f90f20ed759 29 hours ago 651.1 MB
OK,已经构建好了,现在开始启动容器
root@web2:/opt/dockerfiles# docker run -d --restart=always -p 8080:8080 --name jenkins jenkins:test9a563fb692b3d029c3e2dbdb201b8f2d7bba447525af5dbb24ed83e7fc4acbfdroot@web2:/opt/dockerfiles# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES9a563fb692b3 jenkins:test "/bin/sh -c '/ywkj/t 5 seconds ago Up 3 seconds 0.0.0.0:8080->8080/tcp jenkins
已经成功启动
使用WEB测试
root@web2:/opt/dockerfiles# docker logs 9a563fb692b3Tomcat started.Nov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Server version: Apache Tomcat/7.0.65Nov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Server built: Oct 9 2015 08:36:58 UTCNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Server number: 7.0.65.0Nov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: OS Name: LinuxNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: OS Version: 4.2.0-27-genericNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Architecture: amd64Nov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Java Home: /opt/jdk1.7/jreNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: JVM Version: 1.7.0_67-b01Nov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: JVM Vendor: Oracle CorporationNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: CATALINA_BASE: /ywkj/tomcatNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: CATALINA_HOME: /ywkj/tomcatNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Djava.util.logging.config.file=/ywkj/tomcat/conf/logging.propertiesNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManagerNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Djava.endorsed.dirs=/ywkj/tomcat/endorsedNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Dcatalina.base=/ywkj/tomcatNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Dcatalina.home=/ywkj/tomcatNov 25, 2016 9:14:54 AM org.apache.catalina.startup.VersionLoggerListener logINFO: Command line argument: -Djava.io.tmpdir=/ywkj/tomcat/tempNov 25, 2016 9:14:54 AM org.apache.catalina.core.AprLifecycleListener lifecycleEventINFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/libNov 25, 2016 9:14:55 AM org.apache.coyote.AbstractProtocol initINFO: Initializing ProtocolHandler ["http-bio-8080"]Nov 25, 2016 9:14:55 AM org.apache.coyote.AbstractProtocol initINFO: Initializing ProtocolHandler ["ajp-bio-8009"]Nov 25, 2016 9:14:55 AM org.apache.catalina.startup.Catalina loadINFO: Initialization processed in 2592 msNov 25, 2016 9:14:55 AM org.apache.catalina.core.StandardService startInternalINFO: Starting service CatalinaNov 25, 2016 9:14:55 AM org.apache.catalina.core.StandardEngine startInternalINFO: Starting Servlet Engine: Apache Tomcat/7.0.65Nov 25, 2016 9:14:55 AM org.apache.catalina.startup.HostConfig deployWARINFO: Deploying web application archive /ywkj/tomcat/webapps/jenkins.warNov 25, 2016 9:15:57 AM org.apache.catalina.startup.TldConfig executeINFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.Jenkins home directory: /root/.jenkins found at: $user.home/.jenkinsNov 25, 2016 9:15:59 AM org.apache.catalina.startup.HostConfig deployWARINFO: Deployment of web application archive /ywkj/tomcat/webapps/jenkins.war has finished in 64,314 msNov 25, 2016 9:15:59 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory /ywkj/tomcat/webapps/managerNov 25, 2016 9:16:00 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deployment of web application directory /ywkj/tomcat/webapps/manager has finished in 393 msNov 25, 2016 9:16:00 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory /ywkj/tomcat/webapps/host-managerNov 25, 2016 9:16:00 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deployment of web application directory /ywkj/tomcat/webapps/host-manager has finished in 557 msNov 25, 2016 9:16:00 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory /ywkj/tomcat/webapps/docsNov 25, 2016 9:16:01 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deployment of web application directory /ywkj/tomcat/webapps/docs has finished in 310 msNov 25, 2016 9:16:01 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory /ywkj/tomcat/webapps/examplesNov 25, 2016 9:16:03 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deployment of web application directory /ywkj/tomcat/webapps/examples has finished in 2,207 msNov 25, 2016 9:16:03 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory /ywkj/tomcat/webapps/ROOTNov 25, 2016 9:16:03 AM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deployment of web application directory /ywkj/tomcat/webapps/ROOT has finished in 283 msNov 25, 2016 9:16:03 AM org.apache.coyote.AbstractProtocol startINFO: Starting ProtocolHandler ["http-bio-8080"]Nov 25, 2016 9:16:04 AM org.apache.coyote.AbstractProtocol startINFO: Starting ProtocolHandler ["ajp-bio-8009"]Nov 25, 2016 9:16:04 AM org.apache.catalina.startup.Catalina startINFO: Server startup in 69012 msNov 25, 2016 9:16:04 AM jenkins.InitReactorRunner$1 onAttainedINFO: Started initializationNov 25, 2016 9:16:43 AM jenkins.InitReactorRunner$1 onAttainedINFO: Listed all pluginsNov 25, 2016 9:16:43 AM jenkins.InitReactorRunner$1 onAttainedINFO: Prepared all pluginsNov 25, 2016 9:16:43 AM jenkins.InitReactorRunner$1 onAttainedINFO: Started all pluginsNov 25, 2016 9:16:53 AM jenkins.InitReactorRunner$1 onAttainedINFO: Augmented all extensionsNov 25, 2016 9:16:53 AM jenkins.InitReactorRunner$1 onAttainedINFO: Loaded all jobsNov 25, 2016 9:17:04 AM hudson.model.AsyncPeriodicWork$1 runINFO: Started Download metadataNov 25, 2016 9:17:08 AM org.jenkinsci.main.modules.sshd.SSHD startINFO: Started SSHD at port 36605Nov 25, 2016 9:17:08 AM jenkins.InitReactorRunner$1 onAttainedINFO: Completed initializationNov 25, 2016 9:17:08 AM hudson.WebAppMain$3 runINFO: Jenkins is fully up and running
很迅速的搭建好了一个jenkins