มาเล่น Mosca บน Docker กัน

Mosca เป็น MQTT Broker ที่พัฒนาโดยใช้ Node.js และเก็บข้อมูลบน LevelDB ทำให้ Mosca สามารถทำความเร็วในการอ่านและเขียนข้อมูลได้อย่างรวดเร็ว นอกจากนี้ยังสามารถเชื่อมต่อกับ ฐานข้อมูลอื่นเพื่อเก็บข้อมูลแบบ persistance ได้อีกด้วย การใช้งาน Mosca สามารถใช้งานผ่าน CLI และผ่าน Node.js App ได้อีกด้วย การติดตั้งสามารถติดตั้งผ่าน npm แล้วยังสามารถติดตั้งผ่าน Docker ได้อีกด้วย
มาลองเล่น Mosca ผ่าน Docker กัน สั่ง Docker run ได้เลยดังนี้
docker run -p 1883:1883 -p 80:80 -v /var/db/mosca:/db matteocollina/mosca
Continue reading มาเล่น Mosca บน Docker กัน

มาเล่น Azure Marketplace กัน

ครั้งที่แล้วพาเล่น Google Cloud Launcher เพื่อไม่ให้น้อยหน้ากัน ลองมาดูของ Azure บ้าง ในส่วนของ Azure จะมี Azure Marketplace ด้วยเช่นกัน คุณสามารถซื้อ Application ที่คุณต้องการพร้อมบริการ Deploy อัตโนมัติบน Cloud ของ Microsoft อย่าง Azure ได้ อย่างง่ายๆ เลยทีเดียว การใช้งานสามารถใช้งานได้ 2 ที่ คือผ่านหน้า Azure Marketplace หรือ Azure Marketplace ใน Azure Portal ก็ได้

สำหรับการเข้าใช้ Azure Marketplace ผ่านหน้า Azure Portal ก็ง่ายมากๆ กด New+ > เลือกบริการสักอันนึง ดูข้างล่างสุดจะมีเมนูให้เลือกเป็น Azure Marketplace อย่ารอช้ากดเข้าไปเลย
Continue reading มาเล่น Azure Marketplace กัน

มาเล่น Google Cloud Launcher กัน

Google เปิดบริการใหม่เพื่อให้ผู้ใช้ได้เข้าถึงบริการ Google Cloud Computing ได้รวดเร็วขึ้น ผ่านบริการ Google Cloud Launcher ซึ่งเป็นบริการ Deploy Application ที่เป็นที่นิยมบน Google Cloud Compute ของ Google เอง ซึ่ง Application ที่มีให้เลือกมีมากกว่า 120 ตัวเลยทีเดียว พร้อมทั้งแบ่งหมวดหมู่ให้เข้าถึงได้ง่ายดังนี้

  • Infrastructure
  • Database
  • Developer Tools
  • Blog
  • CMS
  • CRM
  • และอื่นๆ

สำหรับ image ที่ให้บริการส่วนใหญ่เป็น Image มาจาก Bitnami ซึ่งเบื้องต้นเป็นการ Deploy ในรูปแบบ Virtual Machine เป็นหลัก สำหรับ Container Services คงจะค่อยๆ ทะยอยออกมาทีหลัง การใช้งาน Cloud Launcher ก็เหมือนกับการ Click to Deploy ของ Cloud Provider รายอื่นๆ ซึ่ง Application ที่เราเลือกใช้จะไป Deploy บนบริการ Google Cloud Platfrom ที่เราใช้บริการอยู่นั่นเอง
Continue reading มาเล่น Google Cloud Launcher กัน

มาเล่น Mosca กัน

Mosca เป็น MQTT Broker ที่พัฒนาโดยใช้ Node.js และเก็บข้อมูลบน LevelDB ทำให้ Mosca สามารถทำความเร็วในการอ่านและเขียนข้อมูลได้อย่างรวดเร็ว นอกจากนี้ยังสามารถเชื่อมต่อกับ ฐานข้อมูลอื่นเพื่อเก็บข้อมูลแบบ persistance ได้อีกด้วย การใช้งาน Mosca สามารถใช้งานผ่าน CLI และผ่าน Node.js App ได้อีกด้วย
มาลองเล่น Mosca กัน ก่อนอื่นติดตั้ง Mosca ผ่าน npm กันก่อนดังนี้
npm install -g mosca bunyan
เมื่อติดตั้งเสร็จ ก็สามารถใช้งานได้เลยดังนี้
mosca --db ./db -v | bunyan
Mosca จะบอกเราว่า MQTT Broker ทำงานอยู่บน port 1883 ให้ลองทดสอบจาก MQTT Spy ดู Continue reading มาเล่น Mosca กัน

มาเล่น Ponte กัน

Ponte เป็นโครงการที่พัฒนาเพิ่มเติมจาก Mosca โดยเน้นให้นักพัฒนาสามารถเชื่อมต่อได้ง่ายผ่าน Protocal ที่ใช้งานได้หลากหลายมากขึ้น เช่น MQTT, CoAP และ REST ซึ่งคุณสามารถเลือกใช้งานได้อย่างอิสระ นอกจากนี้ยังสามารถเชื่อมต่อกับ Persistance storage อย่าง MongoDB, Redis, LevelDB หรือเชื่อมต่อกับ Pub/Sub อย่าง RabbitMQ, MongoDB, MQTT, Redis ได้อีกด้วย Ponte เป็นโครงการภายใต้การดูแลของ Eclipse ครับ

มาลองกันเลยดีกว่า สั่งติดตั้ง Ponte ง่ายๆ ดังนี้
npm install -g ponte bunyan
จากนั้นก็เริ่ม service ได้เลยทันทีดังนี้
ponte -v | bunyan
Continue reading มาเล่น Ponte กัน

มาเล่น Mist.io กัน

Mist.io เป็นบริการ Cloud Control Panel ที่สามารถเชื่อมต่อกับ Cloud Provider ได้หลายค่าย และยังสามารถเชื่อมต่อกับ KVM, VCloud, OpenStack และ Docker ได้อีกด้วย Mist.io เน้นกลุ่มผู้ใช้อุปกรณ์พกพา สามารถใช้งานได้ทั้ง Smartphone และ Tablet สำหรับการใช้งาน Mist.io ก็ง่ายมากสมัครสมาชิกและใช้งานได้เลย

Continue reading มาเล่น Mist.io กัน

ทำ ESP-01 NodeMCU Development Board เล่นกัน

เหตุเนื่องมาจากการดองอุปกรณ์อิเล็กทรอนิกส์ที่ซื้อมาไว้นานไปหน่อย ทำให้มีอุปกรณ์กองเต็มไปหมดเลยต้องเอามาประกอบร่างใหม่ เพราะเดี๋ยวจะกองเยอะมากไปกว่านี้ เมื่อต้นปีตั้งใจว่าจะดู NodeMCU ได้ NodeMCU Dev Kit จากอาจารย์เดียวมาเล่น ได้แรงบันดาลใจจาก Nat Weerawan แห่ง CM Maker Club และคุณ Sittipong Jansorn เลยได้โอกาสมาลองทำ Development Board เล่นเองบ้าง ใช้เวลาวันเสาร์ไป 1 คืน ต่อผิดๆ ถูกๆ ได้ Development Board ออกมาหน้าตาแบบนี้

Continue reading ทำ ESP-01 NodeMCU Development Board เล่นกัน

เก็บตก Google Developers Summit Thailand 2015

ผมได้ e-mail invite ให้ไปงาน Google Developers Summit ก็เลยใช้สิทธิ์สักหน่อยเพราะใน e-mail แจ้งว่าให้สิทธิ์จำนวน 150 คนเท่านั้น พอไปงานจริง คนเยอะมากกกกก เหมือนจะไม่ใช่ 150 คนละ แต่ก็ยังดีที่ได้เข้า session ในส่วน codelab ช่วงบ่ายด้วย 🙂 งานเป็นงาน Developer Summit คล้ายๆ งาน Google Play | Playtime Europe – Succeeding on Google Play with Apps & Games ซึ่งงานในไทยเน้น Material Design, Play Store และ UX/UI หัวข้อประมาณนี้

  • Building for the Next Billion Users
  • Material Design in Action
  • Get Discovered & Reach More Users on Google Play
  • Interaction Feedback in UI Design

ส่วนหัวข้อข้างล่าง ไม่ได้เข้าเพราะไป codelab อีกห้องนึง

  • Developing for Android TV & Chromecast
  • Best Practices for Google Play Games
  • Go Global

งานสัมนาในครั้งนี้ ทีม Developer Advocate ให้ความรู้กันแบบเต็มที่เลย รู้สึกประทับใจกับ session เกี่ยวกับ Interaction Feedback เป็นความรู้ใหม่และเป็นอะไรที่อึ้งมาก เพราะไม่เคยอยากจะรู้เรื่องพวกนี้เลย แค่รู้ว่าทำตาม design guide line และ material design spec ก็พอ แต่ก็คิดในใจเวลาออกแบบใน layout design ว่าทำไมต้องแบบนั้นแบบนี้ บ่นอยู่ในใจ วันนี้ได้คำตอบเลยครับ ทุกอย่างมันมีที่มาและมีเหตุผลในการออกแบบ
ช่วง codelab ตอนบ่ายจัดเต็มเลยครับ ความรู้ในช่วงเช้าเรื่อง Material Design, Interaction Feedback เอามาใช้ใน codelab เรียกว่าไม่เกี่ยงที่จะต้องทำเลย ยอมรับเลยว่าเรียน Material Design มาหลายรอบมาก ทั้ง Android และ Polymer ช่วง codelab จัดเต็มที่เลย ตั้งแต่ Material Theme, Keyline, Typography, Touch Feedback, Animation, Floating Action Button เรียกได้ว่าเกือบครบเลย ขาดเรื่อง Card View เท่านั้น
งานนี้ได้ทั้งความรู้ใหม่และได้ของฝากเป็นเสื้อ Developers Summit, หนังสือ ความลับสู้ความสำเร็จของแอปบน Google Play และแผ่นพับ 10Dos & 10 Don’ts for Google Play developers เรียกได้ว่าคุ้มค่ามาก 🙂 สำหรับท่านที่ไม่ได้ไปงานนี้แล้วอยากลอง Material Design ผมแนะนำให้ทำ codelab อันนี้ครับ ทำอยู่บ้านก็ได้ เพราะในเอกสารอธิบายได้ดีและมี link ให้ไปอ่านเพิ่มเติมในส่วนต่างๆ ด้วย แนะนำเลยครับ 🙂

มาเล่น Kitematic กัน

Kitematic เป็น GUI บน OSX สำหรับจัดการ Docker Container และได้เข้าร่วมกับโครงการ Docker เป็นที่เรียบร้อนแล้ว Kitematic ช่วยให้ชาว OSX ไม่ต้องยุ่งกับ Virtualbox, Vagrant และ Command Line อีกต่อไป มีเครื่องมือที่จำเป็นต้องใช้มาครบ ทั้ง Docker, Docker Machine เชื่อมต่อกับ Virtualbox ให้อัตโนมัติ ทำให้การใช้งาน Docker ได้ง่ายมากขึ้น
สำหรับท่านที่ใช้ OSX ดาวน์โหลด Kitematic ได้ที่หน้าโครงการ เมื่อเปิดการทำงานครั้งแรก Kitematic จะดาวน์โหลดโปรแกรมที่จำเป็นต้องใช้มาให้อัตโนมัติ จากนั้นจะแสดงรายการ Container แนะนำดังนี้

ลองมาสั่ง run ghost blog เลือกที่ ghost blog กกปุ่ม Create ได้เลย Kitematic จะทะยอยดาวน์โหลด Docker Image มาให้
Continue reading มาเล่น Kitematic กัน

มาสร้าง Multi Container App กัน

การใช้งาน Docker Container สามารถใช้งานได้หลายแบบทั้งแบบ Container เดี่ยวๆ ใส่ service ที่ต้องการใช้ลงไป หรือเอา Container หลายตัวมาเชื่อมต่อกันผ่าน Docker Link เช่น volume + web + database เป็นต้น ซึ่งสามารถประยุกต์ใช้ได้หลายวิธี ครั้งนี้จะมาแนะนำสำหรับผู้ที่ต้องการแปลง web app แบบเดิม มาใช้เป็น Multi Container App เริ่มจากเราต้องออกแบบก่อนว่า Container App ที่เราจะสร้่างต้องใช้อะไรบ้าง ตัวอย่างเช่น มี web server + php เชื่อมต่อกับ mariadb เป็นต้น เราสามารถใช้ Docker Link, Fig, Compose ในการเชื่อม Container เข้าหากันได้ เมื่อเชื่อมโยงแล้ว Docker จะสร้าง ENV เพิ่มมาเพื่อให้เราใช้งานใน App นั้นๆ มาดูตัวอย่างกัน
เริ่มจาก run container ส่วน database ก่อนดังนี้
docker run -d -e MARIADB_PASS="mypass" --name mariadb tutum/mariadb
เราจะพบว่ามี MariaDB ทำงานแบบไม่ expose port มายังเครื่อง host จากนั้นลอง run wep app เปล่าๆ ขั้นมาเพื่อสังเกตการทำงาน
Continue reading มาสร้าง Multi Container App กัน