การ Run Bot

การ Start ให้ Bot เริ่มทำงาน

หลังจากที่เราตั้งค่า Configuration ต่าง ๆ เสร็จเรียบร้อยแล้ว ต่อมา เรามา Start ให้ Bot เริ่มทำงานกันดีกว่า

แบบ Simple

ให้ Run คำสั่ง Docker run ดังนี้

$ docker run -d \
  -p 8080:8080 \
  -v $PWD:/iwallet \
  --restart=always \
  --name iwallet ghcr.io/jittagornp/iwallet

หมายเหตุ

  • อย่าลืม Change Directory ให้อยู่ที่ Directory iwallet ที่เราสร้างไว้ก่อนหน้านี้ ก่อน Run คำสั่งน่ะ เพราะ Bot จะอ่านค่า Configuration ต่าง ๆ และเก็บข้อมูลต่าง ๆ ลงใน Directory นี้

  • เวอร์ชัน Free เปลี่ยน Repository จาก ghcr.io/jittagornp/iwallet เป็น jittagornp/iwallet

การเช็คว่า Bot ทำงานหรือไม่

ลองใช้คำสั่ง

$ docker ps -a

ถ้า Bot ทำงาน ตรง STATUS จะเป็น Up ดังนี้

CONTAINER ID   IMAGE                        COMMAND               CREATED       STATUS       PORTS                                   NAMES
e6599daa70d2   ghcr.io/jittagornp/iwallet   "sh /entrypoint.sh"   2 hours ago   Up 2 hours   0.0.0.0:80->8080/tcp, :::80->8080/tcp   iwallet

ลองดู Log การทำงานของ Container ด้วยคำสั่ง

$ docker logs -f iwallet

ถ้าจะออกจาก Log ให้กด Ctrl + c

เปิดหน้า UI

ลองเปิด Browser เช่น Google Chrome แล้วไปที่ URL http://localhost:8080

จะขึ้นเป็นหน้า Login แบบนี้ (ถ้าไม่ขึ้น ให้รอ 10 - 30 วินาที)

ลอง Login ด้วย Your Secret เป็น password ดู

แบบ Advance

ให้ Run คำสั่ง Docker run ดังนี้

$ docker run -d \
  -p 8080:8080 \
  -v $PWD:/iwallet \
  -e IWALLET_DATABASE_USERNAME="<YOUR_DATABASE_USERNAME>" \
  -e IWALLET_DATABASE_PASSWORD="<YOUR_DATABASE_PASSWORD>" \
  -e IWALLET_APP_SECRET="<YOUR_APP_SECRET>" \
  -e IWALLET_ALLOW_DOMAINS="<YOUR_DOMAIN_NAME>" \
  --restart=always \
  --name iwallet ghcr.io/jittagornp/iwallet

หมายเหตุ

  • เวอร์ชัน Free เปลี่ยน Repository จาก ghcr.io/jittagornp/iwallet เป็น jittagornp/iwallet

  • ถ้า Run ไม่ขึ้น ให้ลองลบ Directory database แล้วลอง Run ใหม่ดู (อาจจะเพราะมีการเปลี่ยน Database Username เลยทำให้ Start ไม่ขึ้น)

คำอธิบาย

Environment Variable

Description

Default

IWALLET_DATABASE_USERNAME

บัญชีผู้ใช้สำหรับเข้าถึงฐานข้อมูล

iwallet

IWALLET_DATABASE_PASSWORD

รหัสผ่านสำหรับเข้าถึงฐานข้อมูล

password

IWALLET_APP_SECRET

รหัสผ่านสำหรับเข้า Application (iWallet)

password

IWALLET_ALLOW_DOMAINS

กำหนดให้เข้าถึงได้ผ่าน Domain Name ที่อนุญาตเท่านั้น สามารถกำหนดได้หลาย Domains โดยใช้ , คั่น เป็น domain1, domain2, domain3 Domain ต้องไม่มี http หรือ https นำหน้า เช่น iwallet.jittagornp.me

-

คำแนะนำ

ถ้าจะใช้งานจริง แนะนำให้

Run แบบ Advance และใช้ Two-Factor Authentication + LINE Notify ที่จะอธิบายในหัวข้อถัดไปด้วย เท่านั้น **

อย่าลืมกำหนด Secret/Password ต่าง ๆ ให้ปลอดภัย (Secure) ด้วยน่ะ

Last updated