安裝:java
利用官方提供的Debian軟件包倉庫,能夠自動安裝和升級,首先將祕鑰添加到系統。git
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
而後在/etc/apt/sources.list中添加一下條目:sql
deb https://pkg.jenkins.io/debian-stable二進制/
更新你的本地包索引,而後安裝Jenkins:docker
sudo apt-get update sudo apt-get install jenkins
訪問:npm
http://IP:8080/
配置:json
1) 安裝構建Maven項目插件tomcat
在可選插件中搜索Maven選擇下圖中的插件安裝。服務器
2) 全局工具配置app
在系統設置->全局工具配置中,指定Maven的安裝路徑,jdk的路徑,git路徑等。ssh
在須要部署項目的機器上安裝Node環境,而後使用下面的命令就能夠安裝PM2環境。
npm install pm2 -g
基於Docker安裝
1) 利用docker快速安裝sonar,首先安裝Docker環境,而後編寫以下的docker-compose.yml
db: image: postgres container_name: db restart: always volumes: - $PWD/data/postgres:/var/lib/postgresql/data environment: - POSTGRES_USER=sonar - POSTGRES_PASSWORD=sonar sonarqube: image: sonarqube container_name: sonarqube link: - db environment: - SONARQUBE_JDBC_URL=jdbc:postgresql://db/sonar - SONARQUBE_JDBC_USERNAME=sonar - SONARQUBE_JDBC_PASSWORD=sonar ports: - "0.0.0.0:9000:9000"
啓動
docker-compose up -d
訪問
http://IP:9000/
經常使用命令
docker-compose pull #拉取服務鏡像 docker-compose up -d #啓動 docker-compose restart #重啓 docker-compose stop # 中止運行的容器而不刪除它們,它們可使用命令docker-compose start從新啓動起來 docker-compose start #啓動已經存在的容器做爲一個服務 docker-compose logs #顯示服務的日誌輸出
在Jenkins中添加Sonar
1) 下載sonar插件,SonarQube Scanner for Jenkins
2) 系統管理->系統配置下面配置sonar服務器信息
1) 下載插件。首先你須要下載Deploy Plugin。
2) 在父項目的pom文件中增長遠程部署插件
<plugin> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-maven2-plugin</artifactId> <version>1.6.5</version> <configuration> <container> <!-- 指明使用的tomcat服務器版本 --> <containerId>tomcat8x</containerId> <type>remote</type> </container> <configuration> <type>runtime</type> <cargo.remote.username>Tomcat的用戶名</cargo.remote.username> <cargo.remote.password>Tomcat的密碼</cargo.remote.password> </configuration> </configuration> <executions> <execution> <phase>deploy</phase> <goals> <goal>redeploy</goal> </goals> </execution> </executions> </plugin>
3) 爲Tomcat設置用戶名和密碼
修改tomcat的tomcat-users.xml文件,增長tomcat的manager用戶。
4) 修改Jenkins中的配置
在「構建後操做」中增長以下配置:
當即構建
Jenkins使用ssh部署jar包到目標服務器上,因此首先安裝Publish Over SSH插件,直接再jenkins中的系統管理->插件管理安裝便可
再jenkins的服務器上生成密鑰
ssh-keygen -t rsa
而後使用
ssh-copy-id usera@a.site
複製到目標服務器便可
再jenkins中 系統管理->全局設置
下把剛纔生成的密鑰複製粘貼到這個地方
再剛纔的地方的下面配置目標服務器
以上
Name,隨便起一個名字
Hostname,寫目標服務服務器的地址
Username,寫目標服務器上的用戶名,也是執行文件的用戶(能夠單獨配置一個用戶,最好不要給過高的權限)
Remote Directory:發送到jav包到目標服務器的路徑,必須存在,jenkins不會本身建立目錄
下面還有高級,能夠根據本身的需求更改
以上就是jenkins方面的配置
在某個項目中
在構建後操做中增長Send build artifacts over ssh
Name就是選擇剛纔上一步配置的服務器
下面的就是選擇打包後的jar包等操做
在服務器上,利用pm2監控所傳輸的jar包,並啓動項目。
參考process.json
{ "apps":[ { "name" : "it-eureka", "cwd": ".", "script": "/usr/bin/java", "args": [ "-Xmx100m", "-Xss100m", "-jar", "it-eureka/target/it-eureka-1.0-SNAPSHOT.jar" ], "watch": [ "it-eureka/target/it-eureka-1.0-SNAPSHOT.jar" ], "max_memory_restart": "1G", "log_date_format": "YYYY-MM-DD HH:mm Z", "exec_interpreter": "", "exec_mode" : "fork_mode" }]}