จะเป็นเนื้อป่าที่นอนจมบ่วง แต่ไม่ติดบ่วง

ให้ website ของเราใช้แบบ HTTPS ง่ายๆ ด้วย Traefik

ให้ website ของเราใช้แบบ HTTPS ง่ายๆ ด้วย Traefik
เดียวนี้ไม่ว่าเราจะทำเว็บไซต์ หรือแอพพลิเคชั่นแบบไหนก็ตามจะต้องให้เรียก url แบบ https หมดแล้ว เพื่อความปลอดภัยของข้อมูลในระดับหนึ่ง และยิ่งเล่น SEO บนเว็บไซต์แล้วละก็ ถ้าไม่ใช้งานแบบ https ถือว่าบาปมากนะจ๊ะ โดยปกติที่ผมทำสำหรับโปรเจ็คของ Twin synergy จะใช้ nginx ทำ reverse proxy แล้วเรียกไฟล์ SSL ที่ไปสั่งซื้อมาเอง หรือไม่ก็ใช้งาน Let's Encrypt…
อ่านต่อ

Drupal 8 "Mismatched entity and/or field definitions"

Drupal 8 "Mismatched entity and/or field definitions"
หากใครอัพเดทโมดูล Drupal 8 แล้วพบว่าเจอ Error ของ Entity module แบบรูปล่าง โดยเราเจอได้จากในเมนู Status report (admin/reports/status) Mismatched entity and/or field definitionsวิธีแก้ไขก็คือใช้คำสั่ง drush entity-updates -vy มันก็จะทำการแก้ไขให้นะจ๊ะ ผมเจอบ่อยมาก error ตัวนี้ Happy drupal :)
อ่านต่อ

การเปลี่ยนค่า Time zone ใน Alpine linux

การเปลี่ยนค่า Time zone ใน Alpine linux
พักหลังมานี้เวลาผมจะ Build dockerfile สำหรับทำโปรเจ็คให้ Twin synergy แต่ละครั้ง ผมจะเลือก Alpine linux เป็น OS เริ่มต้นเสมอ เพราะเนื่องจากตัวระบบปฎิบัติการของมันโดยเริ่มต้นมีขนาดเพียง 4.8MB เท่านั้น ถือว่าเล็กโครตๆ ทำให้ Dockerfile ที่ทำขึ้นมามีขนาดเล็กตามไปด้วย และทุกครั้งที่จะใช้งานผมจะต้องเปลี่ยน Time zone ให้เป็น Bangkok เสมอเพื่อปรับเวลาของ…
อ่านต่อ

Modules เริ่มต้นที่จำเป็นต้องติดตั้งของ Drupal 8

Modules เริ่มต้นที่จำเป็นต้องติดตั้งของ Drupal 8
หลังจากที่เราติดตั้ง drupal 8 แล้วทุกคนก็น่าจะอยากรู้ว่า เห้ย...โมดูลที่ต้องลงเพิ่มมีอะไรบ้างเนี้ยเพื่อให้เว็บของเราใช้งานได้เต็มประสิทธิภาพ โมดูลพวกนี้เป็นโมดูลที่ผมจะติดตั้งประจำหลังจากลง Drupal 8 เสร็จแล้ว ผมว่ามันสามารถใช้ได้กับทุกโปรเจคเลย Modules ที่ควรติดตั้งทุกครั้งของ Drupal 8 1. Admin toolbar -…
อ่านต่อ

ทำ S3 ใช้งานเองด้วย Minio server

ทำ S3 ใช้งานเองด้วย Minio server
S3 เป็นบริการ object storage ของ AWS ซึ่งชื่อเต็มๆ ของมันก็คือ Amazon Sample Storage Service (AWS S3) ประโยชน์ของมันก็คือไว้จัดเก็บ และเรียกดูไฟล์ต่างๆ ในรูปแบบของ object ซึ่งการเข้าถึงเรียกใช้ข้อมูลนั้นจะผ่านทาง HTTP หรือ HTTPS  และมีระบบรักษาความปลอดภัย encryption มาให้ด้วย หากยังนึกไม่ออกว่าจะเอามาทำอะไร…
อ่านต่อ

12 vscode extensions for web developer

12 vscode extensions for web developer
ก่อนหน้านี้ผมใช้ IDE หรือ text editor สำหรับพัฒนาเว็บไซต์มาหลายตัว เช่น Notepad++, Atom, Aptana Studio, Sublime text เป็นต้น จนสุดท้ายผมมาจบที่ virtual  studio code (vscode) เพราะมันรองรับการทำงานของผมในหลายๆ ด้าน และมี extension ให้เลือกมาก ไม่น่าเชื่อว่า microsoft จะพัฒนา text editor ได้ดีขนาดนี้ ฮาๆ ซึ่งมันจะมี extension หลักๆ…
อ่านต่อ

วิธีสร้าง docker registry ง่ายๆ โดย docker-compose

วิธีสร้าง docker registry ง่ายๆ โดย docker-compose
Docker registry ก็คือ ที่เก็บไฟล์ docker image ให้เราสามารถดึงมาใช้งานได้ตลอดเวลา โดยเริ่มต้นส่วนใหญ่เราจะใช้ของ Docker store (Docker hub) ซึ่งมันเป็น public ซึ่งเราสามารถเขียน docker image ของโปรเจ็คเราเองแล้วสามารถนำไปฝากไว้ได้ เพื่อให้เราเรียกใช้ง่ายๆ ตัวอย่าง docker image ที่ผมเคยทำไว้บน docker hub ก็จะมี https://hub.docker.com/r/snappytux/…
อ่านต่อ

ภัย 3 อย่างอะไร ที่เมื่อเกิดขึ้นแล้ว แม่ลูกก็ช่วยเหลืออะไรกันไม่ได้?

ภัย 3 อย่างอะไร ที่เมื่อเกิดขึ้นแล้ว แม่ลูกก็ช่วยเหลืออะไรกันไม่ได้?
เนื่องจากวันนี้เป็นวันที่ 12 สิงหาคมและ เป็นวันแม่แห่งชาติ ผมนึกถึงพระสูตรของพระพุทธเจ้าขึ้นมาได้อีก 1 พระสูตร ซึ่งผมคิดว่าน่าจะเหมาะสำหรับให้คุณลูก และคุณแม่ทั้งหลายได้อ่าน ซึ่งอ่านจะยาวหน่อยแต่ผมอยากให้ได้ลองตั้งใจ และมีสติค่อยๆ อ่านจนจบ ดูกรภิกษุทั้งหลาย ภัย ๓ อย่างนี้เป็น อมาตาปุตติกภัย ๓ อย่างนั้น เป็นไฉน คือ  ภัยคือ ความแก่ ๑…
อ่านต่อ

รวมคำสั่งที่ใช้ประจำสำหรับ MongoDB v.3

รวมคำสั่งที่ใช้ประจำสำหรับ MongoDB v.3
ระยะหลังโปรเจ็คแต่ละครั้งของ Twin synergy ก็จะเลือกใช้ MongoDB เป็นอันดับแรก เพราะ mongodb ก็คือ NoSQL โดยจุดเด่นของ NoSQL ส่วนใหญ่ (แต่ไม่ใช่ทุกอย่าง) คือความสามารถในการเขียนข้อมูลได้เร็วกว่า MySQL เป็นอย่างมาก หากงานที่เราทำนั้นเน้นการเขียนข้อมูลมากๆ เช่นต้องเก็บ Log แบบตลอดเวลาแบบ Real-time ทุกการกระทำ และข้อมูลมีขนาดใหญ่โตมาก การใช้งาน…
อ่านต่อ

อัพเดทเวลาของ container ให้ตรงกับ server ผ่าน docker-compose

Time in container is out of sync
สำหรับใครที่ใช้งาน docker โดยสร้างผ่าน docker-comopse อยู่อยากให้เวลาใน container ที่เราสร้างนั้นตรงกับเวลาของ server หรือ host ที่มันอยู่ สามารถทำการใส่ค่า volume ให้มันได้ดังนี้ volumes: - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro จากคำสั่งด้านบนจะทำการ mount ไฟล์ timezone และ localtime เข้าไปใ container…
อ่านต่อ