gitlab-CI/CD部署一個java項目


1、環境准備

  1)安裝jdk工具

  • 安裝yum epel源
    [root@k8s-node02 ~]# yum install -y epel-release
  • 安裝jdk
    [root@k8s-node02 ~]# yum install -y java-1.8.0-openjdk
    
  • 驗證jdk
    [root@k8s-node02 ~]# java -version
    openjdk version "1.8.0_232"
    OpenJDK Runtime Environment (build 1.8.0_232-b09)
    OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)

  2)安裝maven工具

  • 安裝maven官方源
    [root@k8s-node02 ~]# yum-config-manager --add-repo http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo
    [root@k8s-node02 ~]# yum-config-manager --enable epel-apache-maven
  • 安裝maven
    [root@k8s-node02 ~]# yum install -y apache-maven
  • 驗證maven
    [root@k8s-node02 ~]# mvn -version
    Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T03:58:13-04:00)
    Maven home: /usr/share/apache-maven
    Java version: 1.8.0_232, vendor: Oracle Corporation
    Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "3.10.0-957.27.2.el7.x86_64", arch: "amd64", family: "unix"

2、安裝tomcat

  • 官網下載地址:http://tomcat.apache.org/
  • 下載tomcat
    [root@k8s-node02 tools]# wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.50/bin/apache-tomcat-8.5.50.tar.gz
  • 安裝tomcat
    [root@k8s-node02 tools]# tar -zxf apache-tomcat-8.5.50.tar.gz -C /opt/
    [root@k8s-node02 tools]# ln -s /opt/apache-tomcat-8.5.50   /opt/tomcat
    [root@k8s-node02 tools]# echo 'export TOMCAT_HOME=/opt/tomcat'>>/etc/profile
    [root@k8s-node02 tools]# echo 'export  PATH=$PATH:$TOMCAT_HOME/bin' >>/etc/profile
    [root@k8s-node02 tools]# source /etc/profile
  • 啟動tomcat
    [root@k8s-node02 tools]# /opt/tomcat/bin/startup.sh start
    Using CATALINA_BASE:   /opt/tomcat
    Using CATALINA_HOME:   /opt/tomcat
    Using CATALINA_TMPDIR: /opt/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
    Tomcat started.
  • 設置權限
    [root@k8s-node02 java_demo]# chown -R staff:staff /opt/apache-tomcat-8.5.50
  • 瀏覽器驗證: 192.168.200.134:8080 
e Inmp (l In... 
Wiki Mailing Lists 
Home Documentation Configuration Examples 
Apache Tomcat/8.5.50 
Find Help 
ÅPACHE 
If you're seeing this, you've successfully installed Tomcat. Congratulations! 
Recommended Reading: 
Security Considerations How-To 
Manager_Application How-To 
Clustering/Session Replication How-To 
Server Status 
Manager App 
Host Manager 
Developer Quick Start 
Tomcat Setup 
First Web Application 
Managing Tomcat 
Realms & AAA 
JDBC DataSources 
Examples 
For security, access to the manager webaQQ is 
restricted Users are defined in: 
In Tomcat 8.5 access to the manager 
application is split beüeen different users. 
Read more.. 
Release Notes 
Changelog 
Migration Guide 
Security Notices 
Documentation 
Tomcat 8.5 Documentation 
Tomcat 8.5 Configuration 
Tomcat Wiki 
Find additional important configuration 
information in: 
txt 
Developers may be interested in: 
Tomcat Bug Database 
Tomcat 8 5 JevaDocs 
Tomcat 8 5 Git 
Servlet Specifications 
Tomcat Versions 
Getting Help 
FAQ and Mailing Lists 
The following mailing lists are available: 
tomcat-announce 
Important announcements, releases, security 
vulnerability notifications. (Low volume). 
tomcat-users 
user support and discussion 
taglibs-user 
user support and discussion for Buacng_lagljns 
tomcat-dev 
Development mailing list, including commit 
messages

3、准備gitlab的" .gitlab-ci.yml "配置文件

[root@k8s-node02 java_demo]# vim .gitlab-ci.yml 
# 定義stages
stages:
  - build
  - install

# 定義安裝包的存放位置和Tomcat服務器的地址的變量,便於后續部署使用.
variables:
  CIDEMO_PACKAGE_DIR: '/home/gitlab-runner/packages/cidemo'
  SERVER_HOME_DIR: '/home/gitlab-runner/tomcat/cidemo-tomcat'

###################### 構建編譯和Maven打包編譯 #######################

#編譯測試任務:
deploy-build-test:
  stage: build
  only:
    - master
  script:
    - mvn clean package -Dmaven.test.skip=true
    - rm -rf $CIDEMO_PACKAGE_DIR/*.war
    - cp -a target/*.war $CIDEMO_PACKAGE_DIR/cidemo.war

###################### deploy部署安裝 #######################

#打包任務:
deploy-install-test:
  stage: install
  script:
    - echo '准備將最新的war包復制、保存到某個目錄里面供后續使用.'
    - rm -rf $SERVER_HOME_DIR/*.war
    - cp -a $CIDEMO_PACKAGE_DIR/cidemo.war   $SERVER_HOME_DIR/ROOT.war
    - /opt/tomcat/bin/startup.sh stop
    - rm -rf /opt/tomcat/webapps/*
    - cp -a $SERVER_HOME_DIR/ROOT.war /opt/tomcat/webapps/
    - /opt/tomcat/bin/startup.sh start

把編寫的“.gitlab-ci.yml”提交到master端

4、 瀏覽器訪問

 @Umbra


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM