• วิธีแก้ปัญหา docker container ไม่ start cron อัตโนมัติ


    ปัญหา เวลาสร้าง docker container เพื่อ run งานแบบอัตโนมัติ เราก็จำเป็นต้องใช้ cron แต่ว่า เจ้า docker container images เนี่ย จะเป็นรุ่นตัดทุกอย่างที่ไม่จำเป็นออกหมด เอาไว้ให้ start – run – stop แต่ถึงกระนั้น เราก็ยังอยากได้การทำงานแบบ cron อยู่ดี Reproduce สร้าง docker container จาก ubuntu:20.04 ตรวจสอบว่ามี crontab หรือไม่ ก็ไม่มี /var/log/syslog มีไม๊ ก็ไม่มี systemctl มีไม๊ ก็ไม่มี แก้ไข ติดตั้ง 3 อย่าง cron, systemctl, rsyslog แล้ว ขอแถม vim ด้วย ติดตั้งแล้ว ลองตรวจสอบ…

    >> Read More <<

  • วิธีแก้ปัญหา Let’s Encrypt กับ Root Certificate Expire ในวันที่ 30 กันยายน 2021


    ปัญหา เช้านี้ (30 กันยายน 2021) พบว่า อยู่ ๆ เว็บเซิร์ฟเวอร์ที่ให้บริการ ซึ่งใช้ Let’s Encrypt ก็ ขึ้นหน้า “This connection is not private” เป็นเฉพาะกับ เครื่อง Mac, iPhone, iPad ไม่ว่าจะใช้ Safari หรือ Chrome ก็ตาม เอ่ เพิ่ง Renew ไปเมื่อเดือนที่แล้ว เกิดอะไรขึ้น ลองคลิกที่รูป Key แล้ว View Certificate พบว่า อ้าว … ไรว้า ก็ Google ดู พบว่า Root CA ของ Let’s Encrypt “รุ่นเก่า” ทะยอยหมดอายุ https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/…

    >> Read More <<

  • Google Form ระบบรับสมัครพร้อมสร้างไฟล์ PDF และส่งสำเนาไฟล์ให้ผู้สมัคร ฟรีไม่จำกัด


    ขออธิบายหลักการทำงานคราวๆ ของระบบนะครับ คือเมื่อผู้สมัครทำการกรอกข้อมูลที่ Google Form แล้วระบบจะทำการบันทึกข้อมูลลง Google Sheets ตามปกติ หลังจากนั้นก็จะนำข้อมูลไปสร้างเป็นไฟล์ PDF ให้พร้อมสำเนาไฟล์ PDF ให้ผู้สมัครทางอีเมล์

    >> Read More <<

  • [บันทึกกันลืม] วิธีทำให้ jupyter notebook สามารถ export to PDF ได้


    บน OS ต้องติดตั้ง แค่นั้น

    >> Read More <<

  • วิธีรัน Jupyter Notebook, ปิด browser แล้วระบบส่ง LINE บอกพร้อมภาพ เมื่อเสร็จแล้ว ค่อยกลับมาดูผล


    ปัจจุบัน งานด้าน Data Science ก็มักจะใช้ Jupyter Notebook เพราะสะดวกในการทดลอง ทดสอบ ทำทีละบรรทัด ดูผล ปรับแต่งไปได้เรื่อย ๆ แถมสามารถซื้อ Server ส่วนกลาง ลงทุน GPU แล้วใช้พร้อม ๆ กันหลาย ๆ คนทั้งทีมก็ได้ ปัญหาอยู่ตรงที่ การสร้าง Model มักจะใช้เวลานาน (มาก) แล้ว Jupyter มันเป็น Web-based จะปิด Browser ก็ได้ แต่หลายคนคงเคยเจอว่า พอกลับมาเปิด URL เดิม ก็ไม่เห็นผลที่รันแล้ว จริง ๆ แล้วคือ Jupyter Notebook นั้น ทำงานต่อไป จนเสร็จแล้วแหล่ะ แต่ เว็บ Browser น่าจะไม่สามารถต่อ Session ได้ (หวังว่าจะนึกภาพออก)…

    >> Read More <<

  • [บันทึกกันลืม] วิธีตั้งค่า DBeaver ให้สามารถใช้ Memory ได้สูงขึ้น


    วิธีแก้ไข DBeaver เกิด Error java.lang.OutOfMemoryError: Java heap space

    >> Read More <<

  • วิธี Word Wrap ใน Jupyter Notebook / Jupiter Lab


    มีคำถามมา หาคำตอบเจอ คิดว่าเป็นประโยชน์​เลยบันทึกไว้ ปัญหาของคนใช้ Jupyter Notebook / Jupyter Lab คือ ถ้ามีโค๊ดยาว ๆ จะไม่ขึ้นบันทัดใหม่ให้ จริง ๆ ต้องบอกว่า ไม่ Word Wrap ตามภาพที่ 1 ไปค้นหามา พบข้อมูลจาก Alex Ioannides ตอบที่ https://stackoverflow.com/questions/48202340/enable-word-wrap-in-jupyterlab-code-editor เค้าแนะนำให้เอาแก้ไขโดยใส่สิ่งนี้ใน Settings แต่มันอยู่ตรงไหนหล่ะ มันอยู่ตรงนี้นะ Settings > Advanced Settings Editor แล้วก็คลิกที่ Notebook จากนั้นเอาโค๊ดข้างต้นไปแปะที่ User Preferences แล้วกดปุ่ม Save ด้านขวามือบน (รูปแผ่น Disk) ผล หวังว่าจะเป็นประโยชน์นะครับ

    >> Read More <<

  • [บันทึกกันลืม] วิธีแก้ปัญหาข้อมูลประเภท timedelta64[ns] ใน Pandas ไม่สามารถเขียนลงฐานข้อมูล field ที่เป็น Time ได้


    เหตุ: ผลคือ: ซึ่ง ref_visit_time นั้น ใน MySQL/MariaDB ใช้ชนิดเป็น Time เช่น 08:00:00 หมายถึง 8 นาฬิกา อะไรทำนองนั้น ปัญหา: อยู่ที่ตอนเอา Dataframe นี้ ไป Write ใส่อีก Table นึง ซึ่ง table2 นั้น มีโครงสร้างเหมือนกับ table1 เลย โดยเฉพาะ ref_visit_time มีชนิดเป็น Time เช่นกัน แต่ถ้า run code นี้จะได้ Error/Warning ว่า เหตุเพราะ แทนที่จะเก็บเป็น Time มันดันเปลี่ยนเป็น Integer ที่เป็นจำนวน Nanosecond แทนนั่นเอง วิธีแก้ไข ต้องตรวจสอบว่า มี column ใน destination…

    >> Read More <<

  • Zoom Developer – การใช้ Webhook เพื่อรายงานเหตุการณ์ต่าง ๆ ในห้อง Zoom


    เช่นเดียวกับ Enterprise-grade อื่น ๆ Zoom ก็มี API ให้เราพัฒนาโน่นนี่ได้ บทความนี้จะมาแนะนำวิธีการ Webhook เพื่อรายงาน ผ่าน LINE Notify เมื่อมีคนเข้ามาในห้อง เช่นใช้เพื่อแจ้งคนบน Host ว่า มีคนเข้ามาแล้วนะ เป็นต้น แต่ก่อนอื่น ต้องเข้าใจว่า Zoom Account มี หลายรูปแบบ โดยเข้าไปที่เว็บ https://zoom.us/profile Basic Account อันนี้ หลายคนคงจะใช้อยู่ ที่ถูกลิมิต ไม่ให้ใช้งานเกิน 40 นาที — อันนี้ จะเห็นคำว่า BASIC อยู่ในหน้า Profile ดังรูปที่ 1 2. LICENSED Account แบบนี้ สร้างเอง จ่ายตังค์เอง นักเลงพอ ก็จะประชุมได้ไม่จำกัดเวลา คนเข้าได้พร้อมกัน 100 คน…

    >> Read More <<