Tech

Tech127

บทความและประสบการณ์จากงานพัฒนาซอฟต์แวร์ ตั้งแต่ Programming, DevOps, CI/CD และ Docker ไปจนถึงการออกแบบ API, ไล่ปัญหาจาก Log และปรับ Workflow ให้ทีมทำงานได้ลื่นขึ้น

Check out the latest posts

การรัน Job ใน Merge request ของ Gitlab ci

ผมอยากให้มีการ npm run lint ทุกครั้งก่อนที่จะมีการ Merge branch เข้ามายัง dev branch เพื่อให้มันทำการเช็ด code ที่เขียนมาก่อนว่าถูกหลักไหม หรือใครอยากจะให้มันรันคำสั่งอะไรก็ได้ตามสะดวก สามารถทำได้ดังนี้ สำหรับคนที่ใช้ Gitlab ci อยู่ ตั...

วิธีสร้าง Issue template ใน Gitlab

เคยเป็นไหม issue ที่มีคนเขียนถึงเรามา อ่านยังไงก็ไม่เข้าใจ หรือเขียนมาสั้นเกินไป หรือเขียนมาแล้วเข้าใจกันไปคนละแนวทาง ทำให้พอเราหยิบจับ issue นั้นขึ้นมาทำ แทนที่จะเป็นการแก้ไขปัญหา หรือพัฒนาให้เป็นไปตาม Feature นั้นๆ กลับทำให้เกิด...

ลบทุก tag ใน git local

ผมลองเช็ด git tag ใน project ที่เครื่องแล้วรู้สึกว่ามันเยอะจังวะ อยากลบออก เลยไปหาคำสั่งมาได้ดังนี้ $ git tag | xargs git tag -d เพียงแค่นี้ tag ก็จะหายไปในพริบตา... Thanks: https://stackoverflow.com/a/19542426...

ทำ Google storage ให้เป็นชื่อโดเมนของเราเองด้วย Load balancing

ปกติเวลาเราสร้าง google storage แล้วเราจะได้ url ในการเรียกชื่อไฟล์ด้านในของเราเป็น https://storage.googleapis.com/champ-backup/avatar-500-500.jpeg ประมาณนี้ คราวนี้ผมอยากให้มันเรียกเป็นชื่อโดเมนที่เรากำหนดเองได้ เช่น https://media.snappytux.com/avatar-500-500.jpeg ดูน่าใช้งานกว่าใช่ไหมละ มาดู...

ตรวจสอบ port ที่ใช้งานใน macOS

พอดีผมเจอปัญหาเรียกใช้ npm run dev ไม่ได้เพราะ port 3000 มันโดยใช้ไปแล้ว ก็เลยสงสัยว่าใครมันใช้ไปวะ... เลยไปหา command ใน macOS ดูได้ตามนี้ วิธีตรวจสอบ port ที่ใช้งานใน macOS พิมพ์ lsof -i -P | grep LISTEN | grep :$PORT เพื่อตรวจสอบ $ lsof -i...

เปิด Google storage ให้ทุกคนเข้าถึงไฟล์ได้

ปกติหากเราสร้าง Google storage ขึ้นมาไฟล์ใน storage ทั้งหมดนั้นจะเป็นแบบ Private ไม่มีใครสามารถเข้ามาอ่านไฟล์ได้โดยตรง นอกจากเราจะทำการ Signed URLs ให้ถึงจะเข้าถึงไฟล์ได้ แต่เราสามารถทำการเปิดสิทธิ์การเข้าถึงให้สามารถใครก็ได้เข้าถึงไฟล์เราได้เลยผ่าน url ของ Storage ตรงๆ เช่...

You’ve successfully subscribed to SnappyTux: Technology, Health & Mindful Living
Welcome back! You’ve successfully signed in.
Great! You’ve successfully signed up.
Success! Your email is updated.
Your link has expired
Success! Check your email for magic link to sign-in.