เพิ่ม GitLab Runner โดยใช้ Authentication Token

พอดีเข้าช่วยขยับ GitLab 18 เลยมาดูตัว Runner สักหน่อย ลอง Add ด้วยวิธีเดิมมันจะเตือนเราเบาๆ แล้วว่า จากคำสั่งเดิมที่ใช้กัน จุดที่สังเกตุเป็น -r registration token มันจะมีการเปลี่ยนแปลงไป จากเดิมใช้ Registration Tokens จะมาเป็น Authentication Tokens แทนครับ ซึ่งมีความแตกต่าง ดังนี้ โดยแผนของ GitLab ใน Ver 15 เปิดตัว Authentication Tokens / Ver 17 ไม่ให้สร้าง Registration Tokens และจะเอาออกถาวรใน Ver 20 สำหรับขั้นตอนการ Register Runner โดยใช้ Authentication Tokens มีวิธีการ ดังนี้ เปิดสิทธิ user ที่เราต้องการ ให้มีสิทธิ create_runner ทำได้หมดผ่าน Web UI หรือ API เราจะได้ PAT Token มาแล้ว เก็บไว้ให้ดีครับ จะเอามาใช้งานใน Step ถัดไป จากนั้นมาขอ Token โดยเอา PAT Token ที่เราขอ create_runner มาใช้นี่แหละครับ แล้วยิงผ่าน API /api/v4/user/runners ผลลัพธ์มันจะได้ Token ออกมาประมาณนี้ครับ จากนั้นเอา Token ที่ได้ ขึ้นต้นด้วย glrt-xxx-xxx ไป ให้ Runner ใช้งาน ในกรณีที่มี Runner หลายตัวให้ ขอ Token หลายๆรอบตามจำนวน Runner ที่มี ถ้าเอา…

จดๆจาก From Chaos to Clarity จูนทีมเทคให้ตรงจุดจนสร้าง Product ได้ตรงใจ

สำหรับวันนี้มาเกือบไม่ทัน 555 Run Tests ทิ้งไว้ แล้วรีบมางานที่ตึก K+ สามย่านครับ หัวข้อที่จดได้มีประมาณนี้ Key Note – From chaos to clarity สำหรับ Key ของ Session นี้เข้าใจ Role อื่น เพื่อมาปรับการทำงานของตัวเองครับ 📌 อย่างตัว Speaker เค้าเป็นส่วนของ Designer มีปัญหานิดหน่อยในการสื่อสารกับ Dev เลยมีการพูดคุย จูนจนได้ และมี Blog เรื่อง Devๆ ที่ UX Designer ควรรู้: แอปกับ Server คุยกันยังไง และทำไม Designer ต้องรู้เรื่องนี้? (มี 3 ตอนนะ) ลองไปอ่านได้ครับ ไม่จำเป็นต้อง Code ได้ แต่ควรเข้าใจศัพทฺ์เฉพาะของคนที่ต้อง Deal ด้วย เคสนี้สาย Dev เพื่อจะได้คุยไปในทางเดียวกัน 📌 นอกมีเล่าเคสจาก The Money-Making Secrets Behind Hotel Design อันนี้เป็นมุมของฝั่งสถาปนิก เค้าไม่ได้ทำงานในส่วนของเค้าเพียงอย่างเดียวนะ คิดในมุมของ Role อื่น และมีการปรับ Design ย้าย mini bar ของแต่ละห้องมาพื้นที่ส่วนกลางแทน 📌 แต่การเข้าใจมุมมองของคนอื่น อันนี้ Speker จะยก paper Many hands make overlooked work: Over-claiming of responsibility increases with group size ทุกคนมี Bias เป็นของตัวเอง…

เมื่อ DEV ลองไป Workshop Windows Server and Active Directory Domain Services

สำหรับเสาร์ อาทิตย์ที่ผ่านมาได้มีโอกาศแวะมาฟังอาจารย์ Thanyapon Sananakin อ.ตุล Microsoft MVP มาเล่า และพาทำ Workshop Windows Server and Active Directory Domain Services จากกิจกรรม Knowledge Sharing ของทางกลุ่ม Zabbix in Thailand ครับ Introduction to Windows Server 📌 Server เป็นเครื่องที่มีประสิทธิภาพสูง เอาไว้ให้บริการต่างๆตามที่ Client ร้องขอ อย่าง เช่น Web / File Share / Authen เป็นต้น📌 พวก HW Server มีหลายแบบ 📌 นอกจากนี้ Server ยังมี 📌 จุดเด่นของ Windows Server เพิ่งรู้ว่ามีนอกจาก Windows Container มีส่วน Hyper-V Container (คุม Resource ได้) Edition จำนวน VM ใน Hyper V – Standard 2 vm – Data Center Unlimited VM- Azure Editionพวก Edition สูงๆ ทำพวก Software Defined อย่าง Network / Storage ได้ Core Licensing จำนวน Core ของ CPU User Calc Licensing…

Connection String สำหรับ App ที่ต่อกับ MSSQL ที่กำหนด MultiSubnetFailover

Microsoft SQL Server

MultiSubnetFailover ใน MS SQL Server คือ อะไร เป็น Feature ที่ช่วยเรื่อง High Availability (HA) หรือ Disaster Recovery (DR) ของฝั่ง Database ที่ Implement Always On Availability Groups หรือ Failover Cluster Instances (FCI)  โดย Key ของมันจะเข้ามาแก้ ใน App ต้องปรับอะไรบ้าง ? เติม MultiSubnetFailover=True เข้าไปใน connection string ดังนี้ DOTNET (appsetting.json) JAVA SPRING (yaml) Reference

Using swag (from swaggo) to generating Swagger/OpenAPI documentation in your Go project

Install swag CLI tool (Only first time / Update Version) Add swag tag/annotation to your Go code There are 2 locations Note: you can use AI to help generate swag tag/annotation to your Go code. My prompt “I want you to add Swagger annotations to handler functions and select file auth_handler.go” in my Git Copilot Console Update Doc Again Add Swagger UI to your project Install the middleware for your web framework (for example, gin): And access your swagger doc via [YOUR_BASE_PATH], the image below is Go fiber example Reference

[CR] Gin Sara-Chirashi 3 Layers Matsu Set

สำหรับร้านนี้เป็นร้านเล็งมานานแล้วครับ จำได้ตั้งแต่ห้าง One Bangkok ออกโปรเล็กมาด้วย 3xx มั้ง แต่ผมรอจนคนซาลง และพอดีกับอีกห้างเปิดพอดี เลยลงมากินดูครับในวันธรรมดา ตัวร้านทำเลโคตรลึกครับ อยู่ในสุดของส่วน Mitsukoshi Depachika เลยครับ One Bangkok เลยส่วน Counter เก็บเงินของ Supermarket ไปอีกครับ เดินยาวเลยครับ เมื่อมาถึงร้านผมสั่งของเลยครับ Chirashi 3 Layers Matsu (899 บาท) และ ชาอู่หลงเย็น (50 บาท) เห็นว่าเย็นจะมี Refill ครับ) 🍱 ชั้นที่ 1 เป็นส่วนของส่วนเสริมซอสทั้งหลายครับ Sashimi Shoyu (ซาชิมิโชยุ) ถ้าอยากเผ็ดฉุนมี วาซาบิ (Wasabi) กับซุปมิโสะใส่ อร่อยนะ และมีของดองอย่างชิงดอง และกระเจี๊ยบดองชวนตัดเลี่ยนได้ดีครับ 🍱 ชั้นที่ 2 เป็นเครื่องเคียงครับ โดยประกอบด้วยหลายอย่างเลย Aomori Salmon Teriyaki (ปลาแซลมอนย่างซีอิ๊วสไตล์อาโอโมริ) 🍱 ชั้นที่ 3 มีเนื้อสัตว์ ของกินหลายอย่างบังข้าวซูชิสีแดง (Red Sushi Rice) – ข้าวหอมมันอีกแบบต่างไปกับข้าวขาวครับ โดยผมเรียกของบังว่าเครื่องและกัน มีหลายอย่างเลยครับ อย่างตัว พร้อมเครื่องเคียงอย่าง เต้าหู้ทอด (Fried Tofu), ไข่ม้วนญี่ปุ่น (Tamagoyaki), และ พาสลีย์ (ผักตกแต่ง) สำหรับเครื่องดื่มผม ชาอู่หลงเย็น (50 บาท) เห็นว่าเย็นจะมี Refill ครับ) ถ้าร้อนลองถามพนักงานเหมือนจะได้มากานึงครับ อร่อยครับ ของสดใหม่ และไม่อิ่มมากไปด้วยครับ พวกรูปภาพ ถ้า Map ของชิ้นไหนผิดไปทักมาได้นะ ส่วนค่าเสียหายของ Recap ก่อนครับ…

Let’s try using Microsoft SQL Server MCP server with Claude Desktop

For Thai Version: ลองใช้ Microsoft SQL Server mcp server กับ Claude Desktop กัน For this blog, I will document the use of Claude Desktop + Microsoft SQL Server MCP server and think about use cases to see what it can help you to save time & cost What is MCP? MCP (Model Context Protocol) is a common language that allows LLMs to connect with their surroundings, such as APIs or hardware, to perform actions (output) and retrieve information from databases, APIs, or files without having to imagine it. There are several companies working on MCP, so you can find them…

ลองมาทำ Data Dictionary โดยใช้ Claude Desktop + MCP Server กัน

สำหรับ Blog นี้จะเป็นตอนต่อของ Blog ตอนที่แล้วที่เรา ลองเอา Claude Desktop มาเชื่อมกับ MSSQL MCP Server ครับ โดยในรอบนี้เหมือนเป็นการต่อยอดจาก Blog ที่แล้วครับ ผมจะลองเอา Stack เดิม และให้มันสร้างเอกสาร Word ของ Data Dictionary ขึ้นมา ให้เป็น Draft แรก ก่อนให้คนมาลอง Review อีกทีครับ Stack เชื่อมกับ Claude Desktop ผมจะไม่ได้ลงเพิ่มนะ ตอนนี้จะเปลี่ยนจากการใช้งาน pip มาเป็น uv ไม่ต้องลงเพิ่มแล้ว ใน Claude Desktop เพิ่มตามนี้เลย พอ restart Claude เราจะเห็น MCP Server ของ Word ขึ้นมาแล้วครับ Prompt สั่งงาน ของผมเอาง่ายๆเลยครับ ลอง Table เดียวนี่แหละ มันก็ดึงข้อมูลวนไป ของผมรอประมาณเกือบๆนาทีได้ สิ่งที่นานกว่า หาว่าไฟล์มันอยู่ที่ไหนครับ ตัวไฟล์ที่ MCP Server ของ Word จะอยู่ที่เดี๋ยวกับของ App Claude Desktop หน้าตาของ Data Dic ครับ พอไปวัดไปวาได้ ถ้า Prompt ดีๆ ผมว่าออกมาสวยงามเลย

ลองใช้ Microsoft SQL Server mcp server กับ Claude Desktop กัน

สำหรับ Blog นี้ จดบันทึกการใช้ Claude Desktop + Microsoft SQL Server mcp server และลองมาคิด Use Case ดูครับ ว่ามันจะเอาไปทำอะไรได้บ้างครับ MCP คือ อะไร ? MCP (Model Context Protocol) ภาษากลางที่ทำให้ LLM สามารถเชื่อมต่อกับสิ่งรอบตัวได้ เช่น API / HW เพื่อ Action (Output) และหาข้อมูลจาก Database / API / File ได้ แบบที่ไม่ต้องมโนแล้ว ที่นี้ MCP มีคนทำหลายค่ายเหมือนกันครับ ไปหาตามตลาดครับ เช่น smithery.ai / github.com/modelcontextprotocol / mcp.so /  mcpservers.org MCP Microsoft SQL Server ตัว MCP มันเป็นภาษากลาง พอมีภาษากลาง มันจูงใจคนให้เข้ามาพัฒนามากขึ้นทั้งจาก Official และ Community ตอนเลือกใช้ ต้องเลือกดีๆครับ อย่างของตัว MSSQL Server มีคนทำหลายคนเหมือนกัน สำหรับ Blog นีจะลองตัว mssql-mcp-server ของคุณ JexinSam ครับ ต่อไปเป็นการจดๆ วิธีใช้งานครับ ตามมาได้เลย เตรียมตัว หลังจากลง Runtime ที่จำเป็นกันแล้ว มาลงตัว ด้วยคำสั่ง หลังจากลงเสร็จ เราต้องมาหาด้วยครับ ว่าตัวที่ลงอยู่ที่ path ไหนครับ เพราะต้องเอา path นั้นไปใช้ตอน setup mcp ใน Claude…