DevOps

A collection of 31 posts

ทำเว็บให้เร็วขึ้นด้วยการบีบอัดรูปให้เล็กลงทั้งเว็บ
DevOps

ทำเว็บให้เร็วขึ้นด้วยการบีบอัดรูปให้เล็กลงทั้งเว็บ

ลูกค้ามีเว็บไซต์เดิมที่ใช้งานอยู่แล้ว และทีมเราได้รับงานมาพัฒนาต่อให้มี features ต่างๆ มากขึ้น โดยเว็บตัวนี้เป็นลักษณะให้ผู

การใช้งาน cmd และ entrypoint ใน Dockerfile
DevOps

การใช้งาน cmd และ entrypoint ใน Dockerfile

ใน Dockerfile จะมีคำสั่งสองคำสั่งที่ทำงานคล้ายกันมากคือ CMD และ ENTRYPOINT ซึ่งโดยวิธีใช้ทั้งสองอันจะเป็นการเรียกชุดคำสั่ง (command หรือ executables) สุดท้

มาใช้งาน YAML Anchors และ X Properties 
 ใน Docker Compose กัน
DevOps

มาใช้งาน YAML Anchors และ X Properties ใน Docker Compose กัน

YAML anchors เป็นหนึ่งในความสามารถของไฟล์นามสกุล .yaml ที่ทำงานเหมือนกับการเขียน functions เราสามารถจะสร้างชุดคำสั่งบางอย่างแล้วนำไปใช้งานซ้ำๆ ได้ภายในไฟล์ .yaml หรือภายใน services แต่ละตั

วิธีการคัดลอกไฟล์จาก Container
DevOps

วิธีการคัดลอกไฟล์จาก Container

ในบ้างครั้งเราได้ทำการสร้าง docker container ขึ้นมา แล้วเราอยากนำไฟล์จากเครื่องเราเข้าไปยัง Container ที่ทำงานอยู่ หรือนำไฟล์ใน Container ที่ทำงานอยู่ออกมาที่เครื่องเรา เราสามารถทำได้ง่ายๆ

โครงสร้างโปรเจ็ค Dockerfile สำหรับ Microservice
DevOps

โครงสร้างโปรเจ็ค Dockerfile สำหรับ Microservice

โครงสร้างการใช้งาน Dockerfile และ docker-compose.yml ในโปรเจ็คเล็กๆ นั้นโดยปกติ โครงสร้างจะเป็นแนวนี้ myapp/ - appcode/ - Dockerfile - docker-compose.yml และใน docker-compose.yml จะเขียนแบบนี้ version: '3'

ประโยชน์ของการเรียกใช้ Base OS เดียวในทุก Docker image
DevOps

ประโยชน์ของการเรียกใช้ Base OS เดียวในทุก Docker image

ในการ Build docker image เราจำเป็นตัองเลือกใช้งาน Base OS ก่อนซึ่งมันมีหลากหลายมากให้เลือกใช้ เช่น CentOS, Debian หรือ Alpine เป็นต้น แล้วแต่

ทำให้ Docker image เล็กลงด้วยการรวมคำสั่ง
DevOps

ทำให้ Docker image เล็กลงด้วยการรวมคำสั่ง

คำสั่งต่างๆ ที่ถูกเขียนใน Dockerfile จะทำให้ตอนสร้าง Docker image ขึ้นมามีขนาดใหญ่ขึ้นเรื่อยๆ ซึ่งวิธีการที่จะช่วยให้มันเล็กลงได้ก็คื

Ngrok ทำเครื่องเรา online ได้โครตง่าย ฟรีด้วย
DevOps

Ngrok ทำเครื่องเรา online ได้โครตง่าย ฟรีด้วย

เคยหรือไม่ที่พอเราเขียนโปรแกรมสักตัวในเครื่องแล้วอยากให้มันออนไลท์เลยเพื่อให้คนอื่นได้เข้ามาทดสอบ เช่น เขียน API อยู่ในเครื่อง แล้วอยากให้เพื่อนเราที่ทำหน้

การทำ CI/CD ให้กับ Microservice บน Gitlab-ci
DevOps

การทำ CI/CD ให้กับ Microservice บน Gitlab-ci

หลังจากที่ได้รู้วิธีการเขียน gitlab-ci กับของ golang แล้วก็ nodejs กันมาแล้ว คราวนี้เราจะมาลองเพิ่มระดับความยากอีกระดับ นั้นก็คือการเขียน gitlab-ci

ทำ CICD ให้กับ Golang บน Gitlab กันเหอะ
DevOps

ทำ CICD ให้กับ Golang บน Gitlab กันเหอะ

เราได้เรียนรู้การใช้งาน Gitlab-ci กันมาพอสมควร คราวนี้ผมจะทำให้ดูว่าเราจะเขียน .gitlab-ci.yaml ยังไงได้บ้าง โดยในครั้งนี้สำหรับสาวก Golang ว่าเราจะทำ CICD ได้ยั

เตือนระบบ Gitlab ผ่าน discord
DevOps

เตือนระบบ Gitlab ผ่าน discord

พวกเราใช้ Gitlab และ discord เป็นเครื่องมือภายในทีม ในส่วนของ Gitlab ผมว่าทุกคนที่เข้ามาอ่านน่าจะรู้จักหมดแล้วว่ามันคืออะไร ทำอะไรได้บ้าง แต่ Discord

ติดตั้ง Gitlab-runner ไว้ใช้เอง
DevOps

ติดตั้ง Gitlab-runner ไว้ใช้เอง

หลังจากที่ทีมผมเริ่มใช้งาน Gitlab มาปีกว่าๆ ทีมก็เริ่มใหญ่ขึ้น มีหลายโปรเจ็คที่เข้ามาให้ทำมากมาย และมีการใช้งาน Pipeline เยอะมากๆ จนเกินกำหนดที่ทาง

การ deploy ไปยัง server ที่ต้องการด้วย ssh บน Gitlab CI
DevOps

การ deploy ไปยัง server ที่ต้องการด้วย ssh บน Gitlab CI

ในการทำเขียน gitlab-ci.yml นั้นเราสามารถกำหนดได้หลาย stage โดยปกติที่ผมใช้จะเป็น build > test > release > deploy Build ผมจะเอาไว้ติดตั้ง packet ต่างๆ ของแอพพลิเคชั

เริ่มต้นเขียน CI/CD กับ Gitlab
DevOps

เริ่มต้นเขียน CI/CD กับ Gitlab

หลังจากที่คราวก่อนได้โม้เกี่ยวกับ gitlab ไปแล้วว่าทำไมทีมผมจึงใช้งานมัน โดยประโยชน์ของมันหลักๆ ที่ผมชอบก็คือ รองรับการเขียน CICD ตั้งแต่

9 เหตุผลที่เลือกใช้ Gitlab เป็น Git repository
DevOps

9 เหตุผลที่เลือกใช้ Gitlab เป็น Git repository

ก็เป็นเวลา 1 ปีนิดๆ มาแล้วที่พวกเรา Twin Synergy ได้ย้ายงานของเราทั้งหมดจาก Bitbucket มา Gitlab ซึ่งในตอนนั้นผมต้องการสิ่งที่มันจะสามารถทำ CI/CD ได้ และสามารถทำพวก