ติดตั้ง node-red ubuntu 18.04
ก่อนอื่นสร้าง user $sudo adduser rednode
กำหนดสิทธิ์ $sudo visudo
rednode ALL=(ALL:ALL) ALL
จากนั้นใช้คำสั่ง sudo เพื่อล๊อกอินใช้ยูสเซอร์ rednode
su rednode
sudo apt-get install curl
sudo curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
sudo sudo apt-get install -y nodejs
$ sudo npm install -g — unsafe-perm node-red node-red-admin
โดยปกติแล้วการใช้ npm มาช่วยติดตั้งมันจะเก็บแพคเก็จต่างๆ ไว้ใน directory ปัจจุบัน ซึ่งอาจทำให้การเรียกใช้โปรแกรมผิดพลาดได้ ดังนั้นต้องใส่ -g เข้าไปเพื่อบอกกับทาง npm ว่าให้เก็บแพคเก็จต่างๆ ลงใน directory มาตรฐานที่สอดคล้องกับระบบปฏิบัติการ ในที่นี้มันจะเก็บแพคเก็จของ Node-RED ไว้ที่ /usr/local/bin
npm จะพยายาม compile module ซึ่งบางครั้งเป็นโมดูลที่ใช้ภาษา C or C++ JavaScrpt ซึ่งอาจเกิด pop pop ขึ้นมาได้ในระหว่างการ compile ทำให้เกิด error ดังนั้นต้องเพิ่ม — unsafe-perm เข้าไปช่วย เพื่อป้องกันปัญหาการ error ดังกล่าวขึ้น
โปรแกรม Node-RED จะใช้พอร์ต 1880 ซึ่งโดยปกติแล้ว Firewall จะไม่อนุญาติให้ใช้งาน ดังนั้นต้องตั้งค่า Firewall ให้มันปล่อยผ่านก่อน แต่ถ้าไม่ได้เปิดใช้งาน Firewall ก็สามารถข้ามขั้นตอนนี้ไปได้
sudo ufw allow 1880
ตั้งค่าให้ Node-RED ทำงานตอนบูต
$ sudo nano /etc/systemd/system/node-red.service
[Unit]
Description=Node-RED
After=syslog.target network.target[Service]
ExecStart=/usr/local/bin/node-red-pi --max-old-space-size=128 -v
Restart=on-failure
KillSignal=SIGINTWorkingDirectory=/home/rednode/
User=rednodeWantedBy=multi-user.target
ubuntu 18.04 config ตามด้านล่าง work
*ถ้าติดตั้ง library node-red ไม่ได้ ให้ stop service แล้วรันด้วย root $sudo node-red เพื่อติดตั้งก่อน
ExecStart=/usr/bin/node-red-pi — max-old-space-size=128 -v
$ sud systemctl enable node-red
$ sudo systemctl start node-red
$ systemctl status node-red
ตั้งค่าให้ล๊อกอินก่อนเข้าใช้งาน
$ node-red-admin hash-pw
ให้คัดลอกรหัสที่แสดงบนหน้าจอ แล้วแก้ไขไฟล์ชื่อ settings.js
rednode@NodeREDsrv:/$ nano ~/.node-red/settings.js
ให้ค้นหาคำว่า adminAuth แล้ว un-comment ออกตามรูปข้างล่าง จากนั้นให้เปลี่ยน password ใหม่ โดยเอารหัส hash ที่ได้สร้างมาจากข้างบนไปใส่แทน
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "$2a$08$7U3KD3/s0Il6CMlx2nDDGuDiJW1cVk9JJSiWSCLJLzBRWgYyNMtpG",
permissions: "*"
}]
},
$ sudo systemctl restart node-red
Developer Project : IoT Phuket Lab
https://iotphuketlab.home.blog/
https://medium.com/@aegkaluk
https://www.facebook.com/iotphuket/
https://www.youtube.com/user/MrAegkaluk
https://sites.google.com/view/iot-phuket-lab-documents
https://pantip.com/profile/368674#topics
แวะเยี่ยมชมสินค้าของทางร้าน
https://www.phuket-it.com/iotphuketlab/
https://www.lazada.co.th/shop/phuket-bike-lover
https://shopee.co.th/aegkaluk