เริ่มต้น Jenkins part 4: Git & Maven บน Amazon EC2

Phai Panda
4 min readDec 5, 2019

--

ได้กลับมาต่อที่ Amazon EC2 กันเสียที หลังจากไปสร้างโปรเจกต์ด้วย Maven มาแล้ว part นี้จะติดตั้ง Git และ Maven บน Amazon EC2 ครับ

ก่อนจะถึงบทความนี้ ผมเขียนไปแล้ว 3 parts ดังนี้

part 1: Amazon EC2 server (ฟรี 12 เดือน)

และเหลือจัดเตรียม Jenkins อีกเล็กน้อย ซึ่งจะต่อที่ part นี้

part 2: ติดตั้ง Jenkins บนเครื่องเราเอง

เรียกว่าทำบน local server ต่างจาก part นี้ที่เนื้อหาเดียวกันจะทำบน Amazon EC2 server

part 3: โปรเจกต์ Maven และไฟล์ .war

เล่าภาพรวมและเรื่องราว สอน deploy ไฟล์ .war บน Apache Tomcat

ความตั้งใจของ part นี้คือ

  • ติดตั้ง Git บน Amazon EC2
  • ติดตั้ง Git Plugin แก่ Jenkins บน Amazon EC2
  • ติดตั้ง Maven บน Amazon EC2
  • กำหนด Maven Home แก่ Jenkins บน Amazon EC2

Remote to server

เพราะไม่ได้เข้ามาดูหลายวัน เปิด Terminal เพื่อคุยกับ Amazon EC2 server ใครจำไม่ได้ให้ไปอ่าน part 1

sudo ssh -i ~/Downloads/ec2-red-hat-t2micro-devops.pem ec2-user@X.X.X.X

จากนั้นตรวจสอบสถานะของ Jenkins เสียหน่อย

sudo service jenkins status
ยังทำงานอยู่ ผ่านไป 5 วันแล้ว

จัดการ Jenkins

เปิดหน้าเว็บ

<server public ip>:8080
ต้องหา password มาใส่
sudo cat /var/lib/jenkins/secrets/initialAdminPassword

รหัสที่ได้นำไปกรอกเลยจ้า

จากนั้นกด x ตรงมุมบนขวาไปก่อน ประดา plugin ต่างๆไว้มาเพิ่มทีหลังได้ เพิ่มเท่าที่ใช้พอ

ยังไม่ติดตั้ง plugin ตอนนี้

กดปุ่ม Start using Jenkins

จากนั้นไปเปลี่ยน password ของ admin ให้เรียบร้อย

กด apply และ save

ทดลองสร้างโปรเจกต์แรกบน Jenkins ให้ชื่อว่า hello

เมนูด้านซ้าย กด New Item

เลือก Freestyle project เหตุเพราะเรายังไม่ได้ติดตั้ง plugin อื่นๆ

เลือก build step เป็น Execute shell

echo ออกไปสวัสดีพ่อบ้าน

บันทึกแล้วมองที่เมนูทางซ้าย กด Build Now

สังเกตผลลัพธ์ ลูกบอลเป็นสีฟ้าคือดี

กดลูกบอลสีฟ้าไปชมดู

งดงามเหลือเกิน

…โอ ตีสองกว่าแล้ว ไว้ผมเขียนต่อให้ในวันถัดไปนะครับ

ติดตั้ง Git บน Amazon EC2

จริงๆต้องบอกว่านี่เป็นการติดตั้ง Git บน Red Hat Server แต่เพื่อจะขายคำว่า Amazon EC2 ก็ขอให้เข้าใจตามนี้แล้วกันครับ

เปลี่ยนตนเองเป็น root ก่อน ก่อนหน้านี้ก็ลืมไป

sudo su -

ขอ Git มาลง

yum install git

ลองเรียกมัน

git --version

ผมได้

git version 2.18.1

เท่ากับว่าสำเร็จ

ติดตั้ง Git Plugin แก่ Jenkins บน Amazon EC2

ที่หน้าแรกของ Jenkins เลือกเมนู Manage Jenkins

เลือก Manage Plugins

เลือก Available

ค้นหาและเลือก GitHub กดปุ่ม Install without restart

เพราะจะให้ Jenkins คุยกับ Github จึงเลือก plugin นี้
คอย…

เมื่อมัน Success ทุก process แล้ว ให้กลับไปเมนู Manage Jenkins อีกครั้ง คราวนี้มองหา Global Tool Configuration

ส่วนของ Git จะปรากฏออกมา ตั้งชื่อไปว่า GitHub หรือตามฝัน

จากนั้น apply และ save

ติดตั้ง Maven บน Amazon EC2

ตอนนี้เราเป็น root แล้วถูกไหม ตรงไปที่ home directory

cd /ls

จะเห็นหลาย folder เลย ให้มองหา opt folder แล้วเข้าไป

cd opt

หมายเหตุ opt folder นี้ใช้เก็บ extension programs ซึ่งเราจะติดตั้ง Maven ตรงนี้ สำหรับเนื้อหาโครงสร้างของ Linux เบื้องต้น อ่านที่

Google ไปว่า

maven download

มองหาแล้วคัดลอกลิงก์ของมันมา

apache maven 3.X.X-bin.tar.gz

จำได้ไหม เรามีตัวนี้ติดตั้งไว้แล้ว wget พิมพ์ไป

wget https://www-us.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

เครได้ของ

2019–12–04 03:53:20 (14.8 MB/s) — ‘apache-maven-3.6.3-bin.tar.gz’ saved

จากนั้นแกะมันออกมา

tar -zxvf apache-maven-3.6.3-bin.tar.gz

คำสั่งอะไร ไม่เข้าใจ ไม่รู้จัก ไม่เป็นไร ค้นหา

https://stackoverflow.com/questions/21929223/what-does-zxvf-mean-in-tar-zxvf-filename/21929288

เครได้ของ

apache-maven-3.6.3

ขั้นต่อไปก็กำหนด PATH ให้กับ Maven เพื่อนๆจำไฟล์ .bash_profile ที่อยู่ home directory ได้ใช่ไหม ลุย

vi ~/.bash_profile

เพิ่ม

M2_HOME=/opt/apache-maven-3.6.3
M2=$M2_HOME/bin

และ

PATH=$PATH:$HOME/bin:$JAVA_HOME:$M2_HOME:$M2

บันทึกแล้วสั่งโหลดไฟล์

source ~/.bash_profile

อ่านเพิ่มเติมเกี่ยวกับ Maven Environment Setup

ลองเรียก

mvn --version

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /opt/apache-maven-3.6.3
Java version: 1.8.0_232, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09–2.el8_1.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: “linux”, version: “4.18.0–80.4.2.el8_0.x86_64”, arch: “amd64”, family: “unix”

หากไม่ได้ตามนี้ ให้ลองออกจาก root ก่อน

exit

แล้วกลับเข้าไปใหม่

sudo su -

กำหนด Maven Home แก่ Jenkins บน Amazon EC2

ที่หน้าแรกของ Jenkins เลือกเมนู Manage Jenkins เลือก Global Tool Configuration

มองไปยังส่วนของ Maven กดปุ่ม Add Maven

ตัวเลือก Install automatically ให้เอาออกไป

ตั้งชื่อว่า M2_HOME และกำหนด Maven Home path ให้เรียบร้อย

เครื่องหมาย / ด้านหน้า opt นี้สำคัญมาก อย่าลืมใส่นะ

กด apply และ save

เป็นว่า part นี้ไว้เท่านี้ part หน้า เราจะนำ source code โปรเจกต์ HelloJenkins ไปฝากไว้กับ Github

--

--

No responses yet