คอร์สเรียน DevOps ฉบับพื้นฐานกับการใช้ Docker + Linux + GCP
คำอธิบายคอร์สเรียน
คอร์สเรียนนี้จะเป็นการสอนในระดับพื้นฐาน สำหรับสายงาน DevOps ที่เตรียมนำตัวโปรเจคสร้างเว็บของเราที่มีอยู่บนเครื่อง นำไปใช้งานจริงเป็น Production ออกมา พร้อมคำแนะนำต่างๆสำหรับการใช้ Docker ช่วยพัฒนาโปรแกรมของเราอย่างเป็นระบบที่เรียบง่ายกว่าเดิม
สิ่งที่คุณจะได้เรียนรู้
- มีชีทเป็นกระดาษสูตรโกง ช่วยสรุปหลังผู้เรียน เรียนจบไปแล้วแต่อาจจะลืมรูปแบบคำสั่งต่างๆได้
- มีแบบทดสอบ สำหรับการรับใบประกาศนียบัตรที่ออกให้โดยทาง SkillLane
- ได้เห็นวิธีการปฎิบัติจริง ที่ทำให้รู้จักคีย์ลัดต่างๆ และเทคนิคเสริมมากมายที่จะทำให้เราทำงานได้เร็วและง่ายขึ้น
- สอนโดยไม่เน้นสไลด์ สอนโดยเขียนให้ดูจริง และเห็นผลลัพธ์จริง พร้อมเล่าเรื่องเสริมตลอดเวลาการเรียนการสอน
- เรียนรู้วิธีการใช้งาน Windows Subsystem for Linux เวอร์ชั่น 2 (WSL2) เพื่อใช้งานร่วมกับ Windows 10 รุ่นล่าสุด หรือ Windows 11 สำหรับการใช้ Linux บน Windows อย่างง่ายโดยไม่ต้องติดตั้ง Virtualization อื่นๆเพิ่มเติม และกินทรัพยากรต่ำกว่า บริหารจัดการก็ง่ายกว่าด้วย
- เรียนรู้วิธีการใช้งาน Docker โดยพื้นฐาน โดยเฉพาะหัวข้อสำคัญอย่าง Pull, Push, Build, Volume, Network และ Compose
- ทำความรู้จักกับวิธีการใช้งาน Docker Image ต่างๆที่มีบน Docker Hub อย่างการใช้ mysql และแนวทางการอ่านเอกสารวิธีใช้งาน
- เรียนรู้วิธีการสร้าง Web Application แบบสำเร็จรูปร่วมกับ docker-compose.yml ให้สามารถรันได้ทั้งแบบ Development และ Production
- ทำความรู้จักกับ Cloud Platform อย่าง Google Cloud Platform (GCP) ที่สามารถใช้ได้ดีเหมือนๆกับ Amazon Web Services (AWS)
- เรียนรู้วิธีการเชื่อมต่อระหว่างคอมพิวเตอร์เครื่องเรา กับเรื่องปลายทางบน Cloud ต่างๆที่รันอยู่ผ่าน SSH ด้วยเทคนิคพิเศษต่างๆสำหรับคนใช้ Windows และ Visual Studio Code โดยเฉพาะ
- ดูแนวทางปฏิบัติ การใช้ CI/CD โดยพื้นฐานอย่างการใช้ Google Cloud Registry ร่วมกับ Google Cloud Build เพื่อทำให้มีการส่งมอบเว็บไซต์ได้อย่างต่อเนื่อง
- ดูแนวทางปฏิบัติของ NGINX และ Cloudflare เพื่อที่จะนำ Domain name ของเราเชื่อมต่อระหว่าง HTTP Web Server ร่วมกับ DNS และการตั้งค่าต่างๆโดยพื้นฐาน
- ดูแนวทางปฏิบัติการใช้งาน Traefik แทนการใช้ NGINX ที่เหมาะกับงาน Microservice ขนาดเล็กที่รันบน Docker
- รับฟังเทคนิคดีๆมากมาย และแนวทางการศึกษาต่อสำหรับเนื้อหาที่เราสนใจในสายงานด้าน DevOps โดยเฉพาะ
ประโยชน์ที่คุณจะได้รับ
- โดยปกติ Windows มักจะถูกมองว่าเป็นระบบที่ไม่ดีต่อการพัฒนาโปรแกรม ต่างกับ macOS หรือ Linux เพราะมีคุณสมบัติสภาพแวดล้อมแบบ Unix ที่ทำให้มีคำสั่ง และการใช้งานขั้นสูงได้ดีกว่าสำหรับการพัฒนาโปรแกรม อย่างไรก็ตามใน Windows ยุคปัจจุบันนั้นจะมี WSL2 ที่ช่วยให้เรารันได้ทั้ง Windows ไปพร้อมๆกับ Linux ที่ได้สภาพแวดล้อมตัวเดียวกัน และรันระบบได้ทั้งหมดในปัจจุบันอีกด้วย
- การใช้ Docker จะช่วยให้เราไม่ต้องติดตั้ง Software หรือ Service ต่างๆลงในเครื่อง อย่างเช่น ปกติถ้าใครจะพัฒนาโปรแกรมด้วยภาษา php + MySQL ที่จะใช้ LAMP Stack ก็อาจจะนึกถึง XAMPP หรือเก่าๆหน่อยก็จะเป็น AppServ เป็นตัวแรกที่จะติดตั้ง แต่เราสามารถใช้ Docker เลือก Image ที่ต้องการแทนได้ ที่จะทำให้เราจัดการทรัพยากรในเครื่องเราได้สะดวกมากกว่า และจบครบใน Docker ตัวเดียว โดยสามารถเปิด Database ใดๆก็ได้ทั่วโลกและหลายเซิร์ฟเวอร์ในเครื่องเดียวได้ด้วย
- จะเป็นปัญหาปกติอย่างมาก เมื่อเราทำงานร่วมกับ Cloud Platform ใดๆก็ตามร่วมกับ Local Development ที่จะพัฒนาโปรแกรมบนเครื่องของเรา แล้วปรากฎว่าระหว่าง Development & Production มีไฟล์ไม่ตรงกันบ้าง รันไม่เหมือนกันบ้าง มีข้อมูลไม่เหมือนกันบ้าง Software ที่ใช้เวอร์ชั่นไม่ตรงกันบ้าง จึงทำให้ลำบากต่อการจัดการ แต่เราสามารถใช้ Docker เพื่อทำให้ระหว่างการพัฒนา และส่งมอบใช้งานจริงมีทุกอย่างที่คล้ายกันอย่างมากได้ด้วย
- ในการส่งมอบโปรแกรมใช้งานจริง ยิ่งเป็นระบบ Linux ใดๆก็ตามเช่น Ubuntu, Debian, CentOS หรืออื่นๆอีกมากมาย ที่รันอยู่บน Cloud ที่เราใช้งาน จะต้องรันคำสั่งต่างๆ ไม่ว่าจะเป็นการใช้ git pull, FTP อัปโหลดไฟล์, สั่งรันเว็บใหม่, สั่ง Build ใหม่ และอื่นๆอีกมากมายที่เราอาจจะต้องรันซ้ำแล้วซ้ำอีก เราสามารถลดขั้นตอนเหล่านี้นอกจากการใช้ CI/CD แล้ว ก็ยังสามารถใช้ Docker ได้อีกเช่นกัน
- ในการใช้งาน Cloudflare แทน DNS อื่นๆข้างต้นจะช่วยให้เราทำเว็บ HTTPS ได้ง่ายกว่าการใช้ Certbot หรืออื่นๆ โดยในคอร์สเรียนยังมีเทคนิคแนะนำการเชื่อมต่อระหว่าง NGINX + Cloudflare หรือ Traefik + Cloudflare ได้ทั้งคู่ และมีความสะดวกกับความยากง่ายที่แตกต่างกันไป
ทักษะที่ผู้เรียนจะต้องมีก่อนเรียนคอร์สเรียนนี้
- ต้องสามารถเขียนโปรแกรมได้ในภาษาใดภาษาหนึ่ง ไม่มีข้อจำกัด
- ในคอร์สเรียนจะเป็นการยกตัวอย่างด้วยภาษาโปรแกรม JavaScript/Node.js เป็นหลัก แต่สำหรับภาษาโปรแกรมอื่นๆก็สามารถเริ่มต้นเรียนรู้ไปด้วยกันได้เช่นเดียวกัน
- สามารถอ่านและเขียนภาษาอังกฤษในระดับพื้นฐาน
- สามารถใช้งานอินเทอร์เน็ตโดยทั่วไปได้
เหมาะสำหรับ
- นักเรียนระดับประถมปลาย
- นักเรียนระดับมัธยม
- นักศึกษาที่กำลังศึกษาในสายงานที่เกี่ยวข้องกับการพัฒนาโปรแกรมทุกสายงาน
- ผู้ที่สนใจในสายงาน DevOps
- ผู้ที่สนใจในสายงาน Full-stack Web Development
- ผู้ที่ต้องการศึกษาแนวทางปฏิบัติการนำเว็บไปใช้งานจริง (Production & Deployment)
- ผู้ที่สนใจการสร้างโปรแกรมประยุกต์ใช้งานโดยทั่วไปบนระบบคอมพิวเตอร์
เนื้อหาที่มีทั้งหมด
บทนำ
-
แนะนำคอร์สออนไลน์
09:57 นาที -
ดาวน์โหลดสูตรโกงสำหรับการใช้ Docker และ Linux
00:10 นาที -
ดาวน์โหลดไฟล์ตัวอย่างจากที่สอนทั้งหมด
00:10 นาที
DevOps ฉบับพื้นฐานกับการใช้ Docker + Linux + GCP
-
1. Getting Started - เริ่มต้นการติดตั้งสิ่งที่จำเป็น
21:24 นาที -
2. WSL2 (Ubuntu) - การใช้ Linux บนระบบ Windows ผ่าน WSL2
59:41 นาที -
3. Docker Hub - การใช้งาน Docker และวิธีการเลือก Image จากเว็บไซต์ Docker Hub
52:24 นาที -
4. Docker Build - การใช้งาน Dockerfile เพื่อทำการสร้าง Image เป็นของเราเอง
53:04 นาที -
5. Docker Volume - วิธีการสร้าง Volume เพื่อเชื่อมโยงระหว่างไฟล์บน Host Machine และ Docker Container
23:56 นาที -
6. Docker Compose - วิธีการใช้ docker-compose.yml แทนการใช้ Docker CLI
52:10 นาที -
7. Google Cloud & SSH - การเตรียมเว็บใช้งานจริงกับ Cloud Platform และวิธีการเชื่อมต่อผ่าน SSH 01
01:04:51 นาที -
8. Cloud Registry & Cloud Build - วิธีการทำ CI/CD ร่วมกับการใช้ Private Repository 01
01:02:25 นาที -
9. NGINX & Cloudflare - วิธีการทำ HTTP Gateway และการใช้งาน DNS
34:25 นาที -
10. Traefik - แนวทางการใช้งาน Gateway อีกตัวที่น่าสนใจ
33:21 นาที -
11. บทส่งท้าย
11:29 นาที
รีวิวจากผู้เรียน (ทั้งหมด 27 รีวิว คะแนนเฉลี่ย 4.7)
วันเฉลิม ม.
ดีครับ
⭐⭐⭐⭐⭐
วงศ์ธิศักดิ์ เ.
พูดเร็ว ภาษาอังกฤษผิดๆ ถูกๆ
⭐
อรรถพล ม.
สอนดีมากครับ
⭐⭐⭐⭐⭐
Anavit K.
⭐⭐⭐⭐⭐
Rattapon L.
⭐⭐⭐⭐⭐
Rinth S.
⭐⭐⭐⭐⭐
PHRAMAHA S. UONG
⭐⭐⭐⭐⭐
สันติภาพ อ.
⭐⭐⭐⭐⭐
วรวุฒิ ศ.
⭐⭐⭐⭐⭐
สัจจธรรม ข.
⭐⭐⭐⭐⭐
ณัชฉัตรพงศ์ ต.
⭐⭐⭐⭐⭐
สุคชาธัม เ.
⭐⭐⭐⭐⭐
Tussanakorn R.
⭐⭐⭐⭐⭐
Wittawat M.
⭐⭐⭐⭐⭐
it-training t.
⭐⭐⭐⭐⭐
นรภัทร ห.
⭐⭐⭐⭐⭐
Kamonnat O.
⭐⭐⭐⭐⭐
วรพล ว.
⭐⭐⭐
สุนทร ป้.
⭐⭐⭐⭐⭐
อัยรัช เ.
⭐⭐⭐⭐⭐
Nattachai H.
⭐⭐⭐⭐⭐
Prajuab K.
⭐⭐⭐⭐⭐
Pisut l.
⭐⭐⭐⭐⭐
Swiss P.
⭐⭐⭐⭐⭐
kraisit P.
⭐⭐⭐⭐
Chanin P.
⭐⭐⭐⭐⭐
Pawit T.
⭐⭐⭐⭐⭐