postgres-banners

ติดตั้ง postgresql จาก source

เมื่อวันที่ 1 มีนาคม 2018 ที่ผ่านมา postgresql ได้ประกาศ release postgresql 10.3 ลองมาทดสอบการใช้งานโดยการติดตั้งผ่าน Source กันดู

 

สร้าง user สำหรับใช้งาน เนื่องจากเราทำงานใน ฐานะของ root และ ก่อนการใช้งานจะต้องสร้าง user ชื่อ postgres แทน root

ขั้นตอน initial Database โดยให้เปลี่ยนเป็น user postgres

รายละเดียด
-D ที่เก็บ Database
-U Database Super user
-W หยุดถาม password

เริ่มต้น start ด้วยคำสั่ง pg_ctl

ปรับแต่ง config

config pg_hba.conf โดย default กำหนดให้เป็น

เปลี่ยนเป็น

ให้ Stop และ Start ใหม่ จะต้องใช้ password ของ postgres

start postgresql จาก user อื่นๆ

mariadb-seal

Reset ค่า password root ให้แก่ mysql และ mariadb

ปัญหาที่เกิดขึ้นบ่อย คือต้องการ ที่จะ reset password เนื่องจากไม่ทราบว่าเดิมใข้ค่า password อะไรสามารถทำได้ ง่ายๆ มีขั้นตอนดังนี้

ขั้นตอนที่ 1

ขั้นตอนที่ 2 หยุดการทำงานของ mariadb-server และ start แบบ safe

ขั้นตอนที่ 3 Login แบบไม่ต้องใช้ password

ขั้นตอนที่ 4 ตั้งค่า password ใหม่

ขั้นตอนที่ 5 หยุดการทำงาน แบบ safe และค่อย start แบบปรกติ

มาเริ่มต้นใช้งาน jenkins และ Docker

ทดสอบการใช้งาน jenkins ผ่านทาง Docker

1 ติดตั้ง Docker Binary

2 ดาวโหลด jenkins image

3 เริ่มต้น Docker

4 ดูค่า temporary password

8 เปิด browser localhost:8080 และนำค่า password มาใส่

หลังจากกรอก password ก็ติดตั้ง plugin


สร้าง admin user และ กำหนด password

เริ่มต้น การใช้งาน


หยุด Docker

มาเริ่มต้นสร้าง marven project ด้วย command line

Test file Apptest.java

กด manage Jenkins เพื่อติดตั้ง maven plugin เลือก plugin แล้วก็ Download now and install after restart


สร้าง job ใหม่ ด้วยการกด Create new jobs


ตั้งชื่อ mavendemo เลือก Maven project กด ok

ติดตั้ง jdk , maven

ใน section Global Tool Configuration
jdk

maven

note local install

ปรับแต่ง Sublime ให้ใช้ Dart

การตั้งค่าให้ Sublime Text 3 ให้ใช้ Dart ให้ทำการ install Dart
ไปยัง Tools > Command plette เลือก Dart

ตั้งค่าของ preference

สร้าง  Virtual Devices  ใน Andriod Studio

ในการพัฒนา mobile ด้วย react native  จะต้องมีการเตรียม virtual devices สำหรับ android มีขั้นตอนดังต่อไปนี้

สร้าง  virtual device

เลือก พัฒนา บน Android 6


เพิ่ม path ในระบบ เลือกให้ถูกต้องกับระบบที่ใช้งานอยู่

เริ่มต้น พัฒนา mobile project  ด้วย  react native  ให้ติดตั้ง  node ในเครื่องให้เรียบร้อย
ใช้  npm  เพื่อติดตั้ง

ต่อมาให้ติดตั้ง app ชื่อ expo และ กด Scan QR Code ไปยัง bar code เพื่อทำการเชื่อมต่อระหว่าง app.js และเครื่อง มือถือเรา

หากเราต้องการ  run ใน emulator    ให้กด a

ในบทต่อไปก็จะเริ่มต้นในการพัฒนา React Native  ด้วยการสร้าง  project  และทำการ customize app.js  

แนะนำ Flutter UI Framework

Flutter คือ Google Mobile ui framework ที่ถูกพัฒนาขึ้นมาใหม่ เพื่อให้สามารถพัฒนา application ให้มีความสวยงามและมีประสิทธิภาพมากขึ้น
รองรับการพัฒนา Native App ทั้ง IOS และ Android การใช้งานสามารถใช้ร่วมกับ IDE เช่น Android Studio, Visual Code , Intellij เป็นต้น

การติตตั้งร่วมกับ Android Studio ด้วยการคิดตั้ง plugin ดังนี้

ติดตั้ง flutter command
การติดตั้งจะติดตั้ง จาก github ดังนี้

 

อ้างอิงจาก https://flutter.io/get-started/editor/
การใช้งานร่วมกับ Visual Code สามารถทำได้ดังนี้


Validate Setup

การ start ios simulator

พัฒนา React Native Android App บน Windows 10

ติดตั้ง Node.js บน window เปิด web https://nodejs.org/en/ เลือก current version

ขั้นตอนการติดตั้ง

verify ด้วย command

 
Download java (jdk) http://www.oracle.com/technetwork/java/javase/downloads

verify

เพิ่ม JAVA_PATH ใน system variable

ติดตั้ง Android Studio
เปิด web https://developer.android.com/studio/index.html
Download และติดตั้ง

เพิ่ม ANDROID_HOME C:\Users\\AppData\Local\Android\Sdk

เพิ่ม target platform (SDK manager)

เลือก virtual Device สำหรับ เป็น Emulator (จะต้องปิด Hyper-V )ด้วย

flask-logo

พัฒนา API ด้วย Flask Application

Flask คือ python webframe work เรียนรู้ได้ง่าย Flask object ที่ทำการ implement WSGI application และมีประสิทธิภาพ มาเรียนรู้ที่จะเริ่มต้นการพัฒนา ไปดูตัวอย่าง ได้ที่ http://flask.pocoo.org/
ติดตั้ง Flask ด้วย pip

Flask application เลือกสร้างได้ สองแบบ
1 สร้าง app.py ด้วยการสร้าง module (ไฟล์ที่มีนามสกุล py) เหมาะกับ application ขนาดเล็ ไม่ได้มีความซับซ้อน

2 สร้าง app.py ด้วยการสร้าง python package (Directory ที่มีไฟล์ __init__.py)

มาดูตัวอย่างแบบง่ายๆๆ ก่อนครับ ให้สร้าง python module

วิธีการ Run


class flask.Flask(import_name, static_path=None, static_url_path=None, static_folder='static', template_folder='templates', instance_path=None, instance_relative_config=False, root_path=None)

import_name จะแทนค่าด้วย __name__ เมื่อมีการเรียก Flask() constructor จะได้รู้ว่าเป็นของ Application อะไร

แต่หากเราได้ประกาศ application ไว้ใน application/app.py สามารถมีทางเลือกที่จะเรียก Flask contructor ได้ดังนี้

parameter ที่สามารถกำหนดให้แก่ constructor

import_name ชื่อ application package
static_url_path path ของ static file สามารถกำหนดได้แต่หากไม่มีการกำหนดจะใช้ค่า Default คือ  static_folder
static_folder  folder  ที่ใช้สำหรับ static file ที่จะใช้สำหรับ static_url_path โดยค่า default คือ static  folder ที่ root ของ application
 template_folder  folder ที่ทำหน้าที่เก็บ  templatesโดยค่า default คือ templates folder ที่ root application
root_path Flask  กำหนดให้เอง อัตโนมัติ เพื่อกำหนด root path ของ Application

คราวนี้ลองมาสร้าง flask app ใน application/__init__.py  อ้างอิงโครงสร้างแบบที่  2 จากด้านบน แต่ การ start application  จะมีสร้าง file ใหม่ที่จะใช้สำหรับการ start  ชื่อ <code>setup.py</code> ไว้ ดังโครงสร้าง

คราวนี้ก็มาสร้าง file ดังนี้
1) file __init__.py สำหรับ flask application

2) views.py
1) file views.py สำหรับ กำหนด route

Circular imports
ในกรณีที่ views.py มีการ import myapp และ ใน __init__.py ก็มีการ import myapp.views แสดงว่า module มีความสัมพันธ์ซึ่งกันและกัน ที่จริงเราไม่ได้ใช้งาน views ที่เรา import เข้ามาใน __init__.py เพียงต้องการที่จะทำให้มั่นใจว่า module จะต้อง import เข้ามา และเราจะวางไว้ ล่างสุดของ file

3 run app

Flask configuration
สร้าง file config ชื่อว่า config.py โดย เป็นfile ที่ใช้สำหรับการ ตั้งค่า configuration ค่า ตัวแปรใน Config ใช้เป็นอักษรตัวใหญ่

โหลด config ใน application

Run App

Dev Environment Fedora 28

กำหนดการของการ release fedora 28
2018-04-03 Beta Release (Target #1)
2018-04-17 Final Freeze (*)
2018-05-01 Fedora 28 Final Release (GA) (Preferred Target)
2018-05-08 Fedora 28 Final Release (GA) (Target #1)

ติดตั้ง Dev Environment สำหรับ Fedora 28 วางแผนการใช้งาน Vagrant บน Linux libvirt ไม่ใช่ผ่านทาง Virtualbox มีขั้นตอนดังนี้
1) ติดตั้ง package ที่จำเป็น และ ต้องมีการ enable vt-x ใน Bios ก่อน

2) install Virt-manager เพื่อใช้เป็น gui

default network libvirt จะใช้ network ชื่อ virbr0 192.168.122.0/24

3 ต่อมาให้ติดตั้ง vagrant plugin

file Vagrantfile ที่ปรับเปลี่ยนตามความต้องการ

เริ่มต้น boot image

หากต้องการใช้งาน image อื่นสามารถไปค้นหาได้ที่ http://www.vagrantbox.es/ และ https://app.vagrantup.com/boxes/search

4 Connect ไปยัง box

5 ติดตั้ง Docker ใน vm ที่สร้างจาก Vagrant

6 ทดสอบ Django
– สร้าง directory ว่างๆ
– สร้าง Dockerfile

สร้าง Dockerfile
สร้าง requirements.txt
สร้าง docker-compose.yml

install docker-compose

silos-monitoring-dashboard

ThingsBoard IOT Dashboard บน Centos 7

ติดตั้ง thingsboard บน centos 7 และใช้งานร่วมกับ postgresql มีขั้นตอนดังนี้
1). ติดตั้ง java 8

เปิด firewall

2). ติดตั้ง postgresql

3). ตั้งค่า config

4) สร้างฐานข้อมูล

5) ติดตัง thingsboard

6) config

ตั้งค่า memory

ตั้งค่า crontab ให้มีการ restart service เวลา 9.00 am, 21.00 pm

7). หลังจากติดตั้งเรียบร้อย ให้run script

เปิด http://your-ip::8080