詳解Docker下搭建Jenkins構(gòu)建環(huán)境
首先需要搭建好docker環(huán)境的linux系統(tǒng),這個(gè)教程多如牛毛,在此不再贅述。
然后編寫一個(gè)dockerfile來(lái)生成一個(gè)鏡像,dockerfile其實(shí)就是一系列命令的集合,有點(diǎn)像windows的批處理文件,
搭建Jenkins構(gòu)建環(huán)境需要安裝jdk、maven、tomcat、jenkins,另外還安裝了GIT,用來(lái)構(gòu)建GIT來(lái)源的代碼,內(nèi)容如下:
FROM centos:7 # author info MAINTAINER xulijian 514045152@qq.com # install wget to download files RUN yum install wget -y # install git RUN yum install git -y RUN cd /opt # download jdk RUN wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz # download maven RUN wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gz # download tomcat RUN wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.15/bin/apache-tomcat-8.5.15.tar.gz # unzip jdk RUN tar -xvf jdk-8u131-linux-x64.tar.gz -C /opt/ # unzip maven RUN tar -xvf apache-maven-3.5.0-bin.tar.gz -C /opt/ # unzip tomcat RUN tar -xvf apache-tomcat-8.5.14.tar.gz -C /opt # set environment ENV JAVA_HOME /opt/jdk1.8.0_131 ENV MAVEN_HOME /opt/apache-maven-3.5.0 ENV CLASSPATH .:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV PATH $JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH # download jenkins RUN wget -P /opt/apache-tomcat-8.5.14/webapps http://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.46.2/jenkins.war # startup tomcat CMD /opt/apache-tomcat-8.5.14/bin/catalina.sh run # expose memcached port EXPOSE 8080
然后執(zhí)行構(gòu)建命令
docker build -t liuge1988/jenkins:base -f /opt/test/dockerfile /opt/test
-t 要生成的鏡像, user/repo:tag
-f dockerfile文件所在路徑
/opt/test 可以是任意目錄,要同步拷貝到新生成鏡像的目錄,用于初始化目錄內(nèi)容
執(zhí)行完成之后,查看鏡像是否正確生成。
docker images | grep Jenkins
鏡像生成之后,可以將鏡像存儲(chǔ)到docker hub, 以后要用的時(shí)候直接從docker hub上拉取下拉就好了
上傳到docker hub,需要注冊(cè)一個(gè)docker hub賬號(hào), 鍵入命令
docker login
根據(jù)提示輸入用戶名和密碼,如果提示login success,則已經(jīng)登錄成功。
然后執(zhí)行推送命令,將鏡像上傳到docker hub
docker push user/repo:tag
user/repo:tag 用戶/倉(cāng)庫(kù):鏡像標(biāo)簽,如liuge1988/jenkins:base
生成鏡像之后,就可以用此鏡像啟動(dòng)一個(gè)具體的容器了。
docker run -d -i -t --name jenkins_procloud -p 8308:8080 liuge1988/jenkins:base
啟動(dòng)完成之后,執(zhí)行命令查看容器是否運(yùn)行成功。
docker images | grep Jenkins
容器其實(shí)就是一個(gè)輕量的linux,進(jìn)入容器后跟linux系統(tǒng)是一樣的,如果想進(jìn)入容器,進(jìn)行一些操作,可以執(zhí)行以下命令。
docker exec -it containerId /bin/bash
要退出容器輸入exit或Ctrl + D 就可以了。
進(jìn)入tomcat的bin目錄,啟動(dòng)tomcat
啟動(dòng)好tomcat之后就可以通過(guò) 主機(jī)ip:端口/jenkins 來(lái)訪問(wèn)jenkins了。
http://192.168.1.111:8308/jenkins
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 關(guān)于docker啟動(dòng)jenkins環(huán)境的問(wèn)題
- 使用Docker+jenkins+python3環(huán)境搭建超詳細(xì)教程
- 基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持續(xù)集成交付環(huán)境的詳細(xì)教程
- docker環(huán)境下安裝jenkins容器的詳細(xì)教程
- Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼的問(wèn)題
- 從零搭建docker+jenkins+node.js自動(dòng)化部署環(huán)境的方法
- CentOS服務(wù)器部署Docker+Jenkins持續(xù)集成環(huán)境的方法
相關(guān)文章
Docker容器輸入漢字觸發(fā)自動(dòng)補(bǔ)全問(wèn)題
Linux系統(tǒng)中,當(dāng)終端出現(xiàn)中文亂碼通常是由于缺少中文字符集和字體,安裝中文字體和設(shè)置合適的字符集zh_CN.utf8,可以有效解決這一問(wèn)題,首先,通過(guò)查看系統(tǒng)支持的字符集了解是否支持中文,然后安裝相應(yīng)字符集,其次,查看并設(shè)置當(dāng)前系統(tǒng)字符集2024-10-10docker如何對(duì)已經(jīng)啟動(dòng)的容器添加目錄映射(掛載目錄)
當(dāng)我們創(chuàng)建容器之后,不可避免會(huì)遇到修改配置文件的操作,下面這篇文章主要給大家介紹了關(guān)于docker如何對(duì)已經(jīng)啟動(dòng)的容器添加目錄映射(掛載目錄)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02在Docker Compose中獲取最新鏡像的多種方法總結(jié)
Docker 鏡像是 Docker 容器的基礎(chǔ),鏡像包含了應(yīng)用程序所需的所有文件和依賴,Docker-Compose 默認(rèn)不會(huì)自動(dòng)拉取最新的鏡像版本,這可能會(huì)導(dǎo)致使用過(guò)時(shí)的鏡像,從而錯(cuò)過(guò)重要的更新,為了確保 Docker-Compose 始終使用最新的鏡像,我們可以采用多種方法,以下將詳細(xì)介紹這些方法2024-08-08Docker部署項(xiàng)目完全使用指南(小結(jié))
本文主要介紹了Docker部署項(xiàng)目完全使用指南,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-03-03docker可視化管理工具portainer忘記密碼重置教程的實(shí)現(xiàn)
本文主要介紹了docker可視化管理工具portainer忘記密碼重置教程的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08使用docker在linux環(huán)境中部署springboot包的教程
這篇文章主要介紹了使用docker在linux環(huán)境中部署springboot包,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03Docker使用Git實(shí)現(xiàn)Jenkins發(fā)布、測(cè)試項(xiàng)目的詳細(xì)流程
這篇文章主要介紹了Docker使用Git實(shí)現(xiàn)Jenkins發(fā)布、測(cè)試項(xiàng)目的詳細(xì)流程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04使用Docker快速搭建Oracle開發(fā)環(huán)境的方法教程
這篇文章主要給大家介紹了使用Docker快速搭建Oracle開發(fā)環(huán)境的方法教程,文中給出了詳細(xì)的解決方法,對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06docker官方鏡像下載及使用Dockerfile創(chuàng)建鏡像的方法
這篇文章主要介紹了docker官方鏡像下載及使用Dockerfile創(chuàng)建鏡像的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-02-02