LINUX UBUNTU 臺北科技大學資工系郭忠義jykuo/train/Ubuntu14_23.pdf3. 安裝SonarQube...

23
 LINUX UBUNTU 臺北科技大學資工系郭忠義 一、安裝 Ubuntu14.04...................................................................................................................................... 2 二、安裝 SSH .................................................................................................................................................. 4 三、安裝 Git .................................................................................................................................................... 5 四、Eclipse 匯出遠端 Git 專案程式............................................................................................................. 6 五、PPA 安裝 JDK ........................................................................................................................................... 8 六、安裝 Jenkin ................................................................................................................................................ 9 七、整合 Jenkin Git .................................................................................................................................. 10 八、整合 Jenkins gradle............................................................................................................................ 11 九、整合 Jenkins Sonarqube ..................................................................................................................... 12 十、整合 Jenkins Jococo Code coverage.................................................................................................. 14 十一、安裝 Redmine on Ubuntu14.04 ........................................................................................................... 16 十二、瀏覽器下載安裝 JDK ........................................................................................................................ 19 十三、安裝 Tomcat......................................................................................................................................... 20 十四、Ubuntu 14.04 LTS 設定防火牆 .......................................................................................................... 22  

Transcript of LINUX UBUNTU 臺北科技大學資工系郭忠義jykuo/train/Ubuntu14_23.pdf3. 安裝SonarQube...

  • 1  

    LINUX UBUNTU 臺北科技大學資工系郭忠義 一、安裝 Ubuntu14.04...................................................................................................................................... 2 二、安裝 SSH .................................................................................................................................................. 4 三、安裝 Git .................................................................................................................................................... 5 四、Eclipse 匯出遠端 Git 專案程式 ............................................................................................................. 6 五、PPA 安裝 JDK ........................................................................................................................................... 8 六、安裝 Jenkin ................................................................................................................................................ 9 七、整合 Jenkin 與 Git .................................................................................................................................. 10 八、整合 Jenkins 與 gradle............................................................................................................................ 11 九、整合 Jenkins 與 Sonarqube ..................................................................................................................... 12 十、整合 Jenkins 與 Jococo Code coverage .................................................................................................. 14 十一、安裝 Redmine on Ubuntu14.04 ........................................................................................................... 16 十二、瀏覽器下載安裝 JDK ........................................................................................................................ 19 十三、安裝 Tomcat ......................................................................................................................................... 20 十四、Ubuntu 14.04 LTS 設定防火牆 .......................................................................................................... 22  

  • 2  

    一、安裝 Ubuntu14.04

    1. 下載 VMware playaer 12.5 (VMware-player-12.5.0-4352439.exe),安裝。

    http://www.vmware.com/tw/products/player/playerpro-evaluation.html

    2. 下載 Ubuntu14.04 (ubuntu-14.04.4-desktop-amd64.iso),在 VMware Player 安裝

    http://ubuntu.stu.edu.tw/ubuntu-cd/14.04.4/ubuntu-14.04.4-desktop-amd64.iso

    3. 設定名稱、帳號密碼 jykuo,勾選 store virtual disk as a single file,開始安裝。(約 10 分鐘)

    4. 啟動 terminal

    5. 安裝 Linux 更新,restart

    6. 設定時區,Asia/Taipei

    sudo dpkg-reconfigure tzdata

  • 3  

    7. 設定網路,VM 和 PM 的 IP 不同,且同一個網段 IP 的電腦可以連線。

    Player – Manage – Virtual Machine Settings…

    Network Adapter NAT – NAT: Used to share the ….

  • 4  

    二、安裝 SSH

    1. Software Center – Edit – Software Sources main, universe and multiverse 打勾

    2. 安裝 openssh,Y

    sudo apt-get remove openssh-client openssh-server

    sudo apt-get update

    sudo apt-get install openssh-server

    3. 查看 ssh 是否正常啟動

    ps -e | grep ssh

    4. 查看 IP

    ifconfig

    5. 登入 ssh 測試,(Y),輸入密碼

    ssh [email protected]

    6. 跳出

    exit

  • 5  

    三、安裝 Git

    1. 安裝 Git,Y,設定 Git,查看 sudo apt-get install git git-core git-doc git-gui gitk

    git config --global user.name "jykuo"

    git config --global user.email "[email protected]"

    git config --list

     2. 創建 git repostory

    sudo mkdir /usr/share/gitrepo

    sudo mkdir /usr/share/gitrepo/proj01

    sudo mkdir /usr/share/gitrepo/proj02

    sudo mkdir /usr/share/gitrepo/local

    cd /usr/share/gitrepo/proj01

    sudo git init --bare

    cd /usr/share/gitrepo/proj02

    sudo git init --bare 

    3. 設定存取權,為方便,設定 777 sudo chmod -R 777 /usr/share/gitrepo/

    sudo chown -R www-data:www-data /usr/share/gitrepo

    # chown 使用者:群組 檔案

    4. 設定本地端版本,放到 git server cd /usr/share/gitrepo/local

    git init

    gedit good.txt

    git add .

    git commit -a -m 'first'

    git remote add origin [email protected]:/usr/share/gitrepo/proj01

    git push origin master

  • 6  

    四、Eclipse 匯出遠端 Git 專案程式

    1. 建置本地端 Git 儲存庫

    專案 Test01 – 右鍵 – Team – Share Project…

    右鍵 – Team – Add Index

    右鍵 – Team – Commit ,Commit and Push…

  • 7  

    Host: 192.168.211.128

    Repository path: /usr/share/gitrepo/proj02

    Protocol: ssh

    kjy/kjy

    [next][Yes][Yes][Yes][next][next][next]

  • 8  

    五、PPA 安裝 JDK

    sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer java -version

  • 9  

    六、安裝 Jenkin

    1. 下載 jenkin key wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -

    2. 增加更新清單 sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'

    3. 更新 sudo apt-get update

    4. 安裝 sudo apt-get install jenkins

    5. 啟動 sudo service jenkins start

    6. 設定安裝 gradle sudo add-apt-repository ppa:cwchien/gradle sudo apt-get update sudo apt-get install gradle

    7. 開啟瀏覽器 http://192.168.189.129:8080/,複製啟動密碼,(f2a7bb02257d44b79e1f614d29cc1ce7)貼到瀏覽器,啟動 jenkin sudo more /var/lib/jenkins/secrets/initialAdminPassword

    8. 安裝建議 plugin,

    Install Suggested plugin 9. 建第一個管理帳號

    jykuo/jykuo/jykuo/jykuo/[email protected] 10. [若要移除 gradle],

    sudo apt-get remove gradle

  • 10  

    七、整合 Jenkin 與 Git

    1. 新增作業–[輸入專案名稱] 建置 free-style 專案 [OK]

    2. 原始碼管理–Git – Repository URL: /usr/share/gitrepo/proj02 [第一次] Credentials: Add – jykuo/jykuo [儲存]

    3. 馬上建置–工作目錄 4. 設定每五分鐘輪詢 GIT 一次

    組態–建置觸發程序 H 5 * * *

  • 11  

    八、整合 Jenkins 與 gradle

    1. 專案[名稱]–組態–建置 新增建置步驟–執行 Shell

    gradle build 2. 馬上建置 3. 建置歷程

    點選[建置編號] 4. 點選 Console Output

  • 12  

    九、整合 Jenkins 與 Sonarqube

    1. 安裝 docker sudo sh -c 'echo deb https://apt.dockerproject.org/repo ubuntu-trusty main > /etc/apt/sources.list.d/docker.list' sudo apt-get update sudo apt-cache policy docker-engine sudo apt-get install docker-engine

    2. 安裝 Sonarqube (admin/admin) sudo docker pull sonarqube sudo docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube sudo docker ps

    3. 安裝 SonarQube Plugin 管理 Jenkins–管理外掛程式–可用的–過濾條件–SonarQube 若發生 JDK 版本問題,請使用以下指令。 #設定安裝不同版本 JDK sudo update-alternatives --install /usr/bin/java java /opt/jdk/bin/java 300 #sudo update-alternatives --install /usr/bin/javac javac /opt/jdk/bin/javac 300 #設定切換不同版本 JDK sudo update-alternatives --config java #sudo update-alternatives --config javac

    4. 設定 SonarQube servers 管理 Jenkins–設定系統–SonarQube servers – Add SonarQube – 儲存

    Name: MySonar Server URL: http://192.168.10.130:9000/ Server version: 5.3 (請注意版本配合)

  • 13  

    5. 設定 SonarQube Scanner

    管理 Jenkins–Global Tool Configuration–SonarQube Scanner - 新增 SonarQube Scanner - Save

    6. 設定建置步驟

    專案–組態–建置–新增建置步驟–Execure SonarQube Scanner – 儲存 Analysis properties

    sonar.projectKey=moe-st sonar.projectName=Software Testing sonar.projectVersion=1.0 sonar.sources=. sonar.java.binaries=build/classes

    7. 馬上建置–[點選,觀看 SonarQube 結果] 8. [每次重啟 VM]重新啟動

    sudo docker start sonarqube 9. [Optional]其他指令

    sudo docker ps -a sudo docker ps

  • 14  

    十、整合 Jenkins 與 Jococo Code coverage

    1. Jenkins–管理 Jenkins 管理外掛程式–可用的–過濾條件–jacoco

    2. 專案[名稱]–組態–新增建置後動作–[儲存] 3. 專案[名稱] –馬上建置

     

  • 15  

    4. [點選] enlarge 5. 觀看建置訊息狀況 專案 – 建置版本 – Console Output

  • 16  

    十一、安裝 Redmine on Ubuntu14.04

    1. 安裝 Redmine 依賴之相關套件

    sudo apt-get install apache2 libapache2-mod-passenger mysql-server mysql-client 2. 設定 mysql password (jykuo)

    3. 安裝 Redmine,中間設定 (Y)

    sudo apt-get install redmine redmine-mysql

    4. 設定資料庫。選擇 (MySql)

    5. 設定 MySql Password (jykuo),設定兩個共三次。

    6. 安裝 Bundler

    sudo gem install bundler

    7. 設定 passenger 內容,增加第二行,(PassengerDefaultUser www-data) sudo gedit /etc/apache2/mods-available/passenger.conf

    PassengerDefaultUser www-data PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini PassengerDefaultRuby /usr/bin/ruby

  • 17  

    8. 設定內容 sudo gedit /etc/apache2/sites-available/000-default.conf

    Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all RailsBaseURI /redmine PassengerResolveSymlinksInDocumentRoot on

    9. 連結 redmine 原始碼到 web root

    sudo ln -s /usr/share/redmine/public /var/www/html/redmine

    10. 更改權限

    sudo chown -R www-data:www-data /usr/share/redmine/

    11. 重啟 Apache

    sudo /etc/init.d/apache2 restart

    12. 查詢 VM ip,ifconfig,

    13. 開啟 Redmine 網頁,192.168.211.128/redmine

    帳號 : admin/ 密碼: admin

    14. 安裝 redmine 後主要目錄結構如下:

    #redmine 目錄:/usr/share/redmine/ #設定檔目錄:/etc/redmine/default/ #日誌檔目錄:/var/log/redmine/

  • 18  

    15. 設定 SMTP

    (1) sudo cp /usr/share/redmine/configuration.yml.example /etc/redmine/default/configuration.yml (2) sudo gedit /etc/redmine/default/configuration.yml

    # default configuration options for all environments default: # Outgoing emails configuration (see examples above) email_delivery: delivery_method: :smtp smtp_settings: address: smtp.ntut.edu.tw port: 25 domain: ntut.edu.tw

    (3) 重啟 apache 服務 sudo service apaches restart

    (4) 進入 Redmine,設定,並確認是否成功

  • 19  

    十二、瀏覽器下載安裝 JDK

    1. 啟動 Firefox 瀏覽器,到 oracle Java SE Development 網站,下載 JDK 8 (jdk-8u101-linux-x64.tar.gz),Save File

    2. 解壓縮 JDK 8

    cd ~ cd Downloads tar zxvf jdk-8u101-linux-x64.tar.gz

    3. 移到 /opt/jdk 目錄下

    sudo mv jdk1.8.0_101 /opt/jdk 4. 修改設定檔/etc/profile,增加以下 4 行

    sudo gedit /etc/profile

    export PATH=$PATH:"/opt/jdk/bin" export JAVA_HOME="/opt/jdk" export JRE_HOME="/opt/jdk/jre" export CLASS_PATH="/opt/jdk/lib:/opt/jdk/jre/lib"

    5. 執行 /etc/profile

    source /etc/profile 6. 重新啟動 VM

  • 20  

    十三、安裝 Tomcat

    1. 下載 Apache Tomcat 8 (apache-tomcat-8.0.36.tar.gz),下載 8.03 2. 解壓縮 Tomcat 8,

    cd ~ cd Downloads tar zxvf apache-tomcat-8.0.36.tar.gz

    3. 移到 /opt/tomcat 目錄下

    sudo mv apache-tomcat-8.0.36 /opt/tomcat 4. 修改 tomcat 執行劇本設定檔 /opt/tomcat/bin/startup.sh,增加以下 4 行

    sudo gedit /opt/tomcat/bin/startup.sh PATH=$PATH:"/opt/jdk/bin" JAVA_HOME="/opt/jdk" JRE_HOME="/opt/jdk/jre" CLASS_PATH="/opt/jdk/lib:/opt/jdk/jre/lib" TOMCAT_HOME=/opt/tomcat

  • 21  

    5. 編輯 Count.jsp sudo gedit /opt/tomcat/webapps/ROOT/Count.jsp

    Count +

    6. 執行 Tomcate

    sudo /opt/tomcat/bin/startup.sh 7. 啟動瀏覽器,網址 127.0.0.1:8080/Count.jsp

  • 22  

    十四、Ubuntu 14.04 LTS 設定防火牆

    (使用 ufw)ufw 即為「Uncomplicated Firewall」的縮寫,是簡單的 iptables 前端定工具,無法完全取代 iptables ,若想進一步複雜 firewall 設定,得用 iptables 層面。 Ubuntu 預設會安裝,如果目前使用的版本沒有 sudo apt-get install ufw 所有設定檔在/etc/ufw/ 啟用 sudo ufw enable 關閉 sudo ufw disable 查看防火牆狀態/規則 sudo ufw status 查看防火牆規則 以編號列出 sudo ufw status numbered 刪除防火牆規則 sudo ufw delete RULE | NUM sudo ufw delete 1 //刪除列表"1 號"規則 sudo ufw delete allow http | sudo ufw delete allow 80 sudo ufw delete deny http | sudo ufw delete deny 80 sudo ufw delete reject http | sudo ufw delete reject 80 ================================================ 加入防火牆規則 sudo ufw allow http | sudo ufw allow 80 指令、以 protocol 方式加入 如上面 http 之類。 ufw 會參照/etc/services 通訊埠,以其他 protocol 可以去裡面找,或直接打埠號,阻擋外部進來的服務。 sudo ufw default deny 內定是允許或是禁止 sudo default allow[deny] 指定從 10000 埠到 20000 埠 設定 allow 通訊協定為 UDP sudo ufw allow 10000:20000/udp 刪除在 allow 前加 delete sudo ufw delete allow 10000:20000/udp sudo ufw allow 3389/tcp sudo ufw allow 3389/udp sudo ufw allow from 140.124.180.170

  • 23  

    安裝 Email

    sudo apt-get install postfix #Select ‘Internet Site’

    sudo apt-get install mailutils

    #sudo gedit /etc/redmine/default/configuration.yml