ไปที่ Create จากนั้นเลือก Instances
ไปที่ Distributions จากนั้นเลือก ubuntu 18.04×64
ไปที่ Marketplace จากนั้นเลือก Jenskins
ไปที่ Machine Type เลือก General
ไปที่ Cloud Firewall เลือก SSH , Http-Https และ Ping
ไปที่ Authentication เลือก Password (อย่างน้อย 8 ตัวอักษร มีตัวพิมพ์เล็ก ตัวพิมพ์ใหญ่ ตัวพิเศษและตัวเลข) จากนั้นกด Create
ทดสอบเปิดเว็บไซต์ http://< external IP > เราก็จะได้หน้าตา Jenkins มาเป็นที่เรียบร้อย ต่อมาให้ทำการเปิด terminal และพิมพ์
$ ssh nc-user@< external IP >
เราจะเห็น Admin Password ของ Jenkins
นำรหัสผ่านที่ได้ใส่ใน administrator password
ในหน้านี้จะให้เลือกว่าเราจะ install plugins แบบไหน แบบแรกจะเป็นแนะนำ ส่วนแบบที่สอง เรามาสามารถเลือกได้
ต่อมาจะให้ Create First Admin User หรือ จะข้ามไปก็ได้แต่ก็จะใช้รหัสเดิม
เมื่อเสร็จแล้วให้กด Start ได้เลย
ตอนนี้เรายังไม่มี project ให้เราทำการสร้างโปรเจคโดยกดที่ New item
Freestyle project
ให้เราตั้งชื่อ Project ของเราจากนั้น เลือก Freestyle project แล้วกด OK
ต่อมาให้เราสร้าง file เปล่าใน github จากที่นี้คือ hello.txt แล้วกดที่ Clone or download จากนั้นให้ copy url
มาที่ Source Code Management แล้วเลือก Git จากนั้นใส่ url ที่ Repository URL และใน Branch Specifier ให้พิมพ์ */master หมายความว่าให้รันไฟล์ทุกอย่างที่อยู่ใน project จากนั้นกด Save
จากนั้นให้กด Buuild Now เราจะเห็นตรง Build History จะมี #1 ขึ้นมา และใน Workspace ก็จะมี file ที่เราสร้างไว้ใน Github
ในที่เก็บ Workspace เราก็จะมี file ที่เรากด Build now ด้วย
ต่อมาจะทำการ automatic run เมื่อเราเปลี่ยนแปลงข้อมูลใน hello.txt โดยการกดที่ Configure มาที่ Build Triggers เลือก Poll SCM ให้ใส่ * 5 ตัว คือจะทำการ run เมื่อเราเปลี่ยนแปลงข้อมูล สามารถตั้งค่า เวลาการ run ตามที่เราต้องการได้ จากนั้นกด SAVE
จากนั้นให้มาที่ Github แล้วแก้ไขข้อมูลโดยพิมพ์ว่า “Hello Nipa” แล้วกด
Commit Changes
จะเห็นว่าใน Build History จะมี #2 เพิ่มขึ้นมา ถ้าเราแก้ไขข้อมูลอีกก็จะ มี History เพิ่มมาเรื่อยๆ เมื่อกดที่ view ของ hello.txt ก็จะโชว์ข้อความ “Hello Nipa” หรือสามารถดูใน /var/lib/jenkins/workspace/test_jenkins/hello.txt
Pipeline
ให้เราตั้งชื่อ Project ของเราจากนั้น เลือก Pipeline แล้วกด OK
สามารถใช้ Git แบบเดิมก็ได้แต่ทีนี้เราลองมาที่ Pipeline จากนั้นลองเขียน Script แล้วกด Save
Pipeline ใช้งานจากตัวแปร Environment ต่าง ๆ ของระบบได้ โดยการใช้
${env.<ชื่อตัวแปร>}
pipeline { agent any environment { NIPA_URL = 'https://nipa.cloud' Hello = "Hello Nipa Cloud" } stages { stage('Init'){ steps { echo 'Init' echo 'Test Jenkins' } } stage('NIPA') { steps { echo "Nipa Cloud ${env.NIPA_URL}" } } stage('hello') { steps { echo "$Hello" echo 'hello' } } } }