Actual Budget บน VPS: ติดตั้งและตั้งค่าตัวจัดการงบประมาณส่วนตัว

2 อ่านขั้นต่ำแล้ว
Tropic
Actual Budget บน VPS: ติดตั้งและตั้งค่าตัวจัดการงบประมาณส่วนตัว

Actual Budget: ตัวจัดการงบประมาณส่วนตัวของคุณบน VPS

แอปธนาคารบอกว่าเงินของคุณถูกใช้ไปที่ไหนแล้ว แต่ Actual Budget ตอบคำถามอีกแบบว่า จากยอดเงินที่มีอยู่ คุณใช้จ่ายได้จริงเท่าไร เมื่อบางส่วนถูกกันไว้สำหรับค่าเช่า อาหาร ท่องเที่ยว และค่าใช้จ่ายฉุกเฉินแล้ว

Actual Budget เป็นตัวจัดการการเงินส่วนตัวแบบโอเพนซอร์สที่ใช้งานได้ฟรี ทำงานบนอุปกรณ์ของคุณเอง ซิงโครไนซ์ผ่านเซิร์ฟเวอร์ของคุณ และรองรับการเข้ารหัสแบบต้นทางถึงปลายทาง คู่มือนี้อธิบายฟีเจอร์ ข้อจำกัด และวิธีติดตั้งบน VPS

Actual Budget ใน 7 ขั้นตอน

  1. สร้าง Linux VPS และชี้ซับโดเมนไปยังเซิร์ฟเวอร์ เช่น budget.example.com
  2. ติดตั้ง Docker และ Docker Compose
  3. เรียกใช้คอนเทนเนอร์ทางการพร้อมไดเรกทอรีข้อมูลถาวร
  4. เปิดใช้งาน HTTPS ผ่าน Caddy
  5. ตั้งรหัสผ่านเซิร์ฟเวอร์และสร้างงบประมาณ
  6. เพิ่มบัญชี หมวดหมู่ กฎ และรายการชำระเงินประจำ
  7. เปิดใช้การเข้ารหัสและตั้งค่าการสำรองข้อมูลภายนอก

Actual Budget คืออะไร?

Actual Budget เป็นแอปพลิเคชันแบบโฮสต์เองสำหรับจัดการงบประมาณส่วนตัวหรือครอบครัว หลายคนมองว่าเป็นทางเลือกโอเพนซอร์สแทน YNAB แต่คุณก็สามารถเริ่มต้นด้วยงบประมาณใหม่ทั้งหมดได้เช่นกัน

บริการนี้ใช้วิธีจัดงบประมาณแบบซองเสมือน สมมติว่าบัญชีของคุณมีเงิน 100,000 รูเบิล ในจำนวนนี้ 40,000 รูเบิลจำเป็นสำหรับที่อยู่อาศัย 20,000 รูเบิลสำหรับอาหาร 10,000 รูเบิลสำหรับสาธารณูปโภค และ 15,000 รูเบิลสำหรับเงินสำรองฉุกเฉิน เมื่อจัดสรรเงินแล้ว คุณจะเหลือเงินสำหรับการซื้อที่ไม่จำเป็นเพียง 15,000 รูเบิล ไม่ใช่ 100,000 รูเบิลเต็มจำนวน

แนวทางนี้เปลี่ยนบทบาทของแอปติดตามค่าใช้จ่ายทั่วไป เพราะแอปประเภทนั้นอธิบายการใช้เงินที่ผ่านมา ส่วน Actual Budget ช่วยให้คุณตัดสินใจก่อนซื้อ เงินที่ไม่ได้ใช้ในหมวดหมู่จะถูกยกยอดไป และหากใช้เกินงบ คุณสามารถย้ายเงินจากซองอื่นมาชดเชยได้

อีกจุดที่แตกต่างคือสถาปัตยกรรมแบบ local-first งบประมาณจะถูกเก็บไว้บนอุปกรณ์ที่เชื่อมต่อและยังใช้งานได้แม้ไม่มีอินเทอร์เน็ต เมื่อกลับมาเชื่อมต่อ การเปลี่ยนแปลงจะซิงโครไนซ์ผ่านเซิร์ฟเวอร์ VPS มีหน้าที่หลักในการแลกเปลี่ยนข้อมูลระหว่างคอมพิวเตอร์ โทรศัพท์ และเบราว์เซอร์ ไม่ได้ประมวลผลทุกการทำงานแทนอุปกรณ์

ฟีเจอร์สำคัญของ Actual Budget

  • การจัดงบแบบซอง คุณจัดสรรเฉพาะเงินที่ได้รับมาแล้วเท่านั้น
  • บัญชีและธุรกรรม รองรับการโอน การแบ่งการซื้อรายการเดียวไปยังหลายหมวดหมู่ โน้ต และการกระทบยอดคงเหลือ
  • กฎและกำหนดการ คุณสามารถจัดรูปแบบคำอธิบายจากธนาคารใหม่ กำหนดหมวดหมู่ และวางแผนเงินเดือน ค่าเช่า หรือค่าสมาชิกล่วงหน้า
  • การนำเข้า รองรับ CSV, QIF, OFX, QFX และ CAMT รูปแบบที่มีตัวระบุธุรกรรมช่วยป้องกันรายการซ้ำได้ดีกว่า
  • รายงาน มีรายงานกระแสเงินสด มูลค่าสุทธิ การใช้จ่าย และกราฟที่ปรับแต่งได้
  • การย้ายข้อมูลและ API แอปสามารถนำเข้าข้อมูลจาก YNAB4 และ YNAB รุ่นปัจจุบัน รวมถึงมี API สำหรับการเชื่อมต่อแบบกำหนดเอง

บนโทรศัพท์ Actual Budget จะติดตั้งเป็น PWA หรือเว็บแอปที่เพิ่มไว้บนหน้าจอหลัก ควรตรวจสอบอินเทอร์เฟซบนมือถือก่อน เพื่อให้แน่ใจว่าเหมาะกับการใช้งานของคุณ

พารามิเตอร์บริการคลาวด์Actual Budget
การจัดเก็บข้อมูลอยู่กับผู้ให้บริการอยู่บนอุปกรณ์และเซิร์ฟเวอร์ของคุณเอง
การใช้งานออฟไลน์ขึ้นอยู่กับบริการฟีเจอร์หลักใช้งานได้ภายในเครื่อง
การดูแลรักษาผู้ให้บริการเป็นผู้ดูแลเจ้าของเป็นผู้ดูแล
ค่าใช้ซอฟต์แวร์แพ็กเกจสมาชิกหรือแผนฟรีไม่มีค่าสมาชิกบังคับ
การควบคุมข้อมูลเป็นไปตามนโยบายของผู้ให้บริการเจ้าของเซิร์ฟเวอร์เป็นผู้ควบคุม

Actual Budget เหมาะกับผู้ที่ให้ความสำคัญกับความเป็นส่วนตัวและการควบคุมข้อมูล บริการคลาวด์จะสะดวกกว่า หากคุณไม่ต้องการดูแลเซิร์ฟเวอร์เอง

ข้อกำหนดของเซิร์ฟเวอร์สำหรับ Actual Budget

โครงการนี้ไม่ได้เผยแพร่ข้อกำหนดขั้นต่ำที่ตายตัวสำหรับ CPU และ RAM เซิร์ฟเวอร์ทำหน้าที่ซิงโครไนซ์ข้อมูลทางการเงินปริมาณไม่มากเป็นหลัก ดังนั้นการเริ่มต้นสำหรับผู้ใช้หนึ่งคนหรือครอบครัวหนึ่งครอบครัวสามารถใช้การกำหนดค่าดังนี้:

  • 1 vCPU;
  • RAM 1 GB;
  • SSD 10 GB;
  • Ubuntu 24.04 LTS;
  • โดเมนหรือซับโดเมน;
  • พื้นที่จัดเก็บภายนอกสำหรับสำรองข้อมูล

นี่เป็นคำแนะนำเชิงปฏิบัติ ไม่ใช่ข้อกำหนดขั้นต่ำอย่างเป็นทางการ หากคุณวางแผนจะเรียกใช้คอนเทนเนอร์อื่นด้วย ควรจัดสรร RAM 2 GB

วิธีติดตั้ง Actual Budget บน VPS

ตัวอย่างนี้ใช้ Ubuntu 24.04 และซับโดเมน budget.example.com

1. เตรียมเซิร์ฟเวอร์

สร้างระเบียน DNS A ที่ชี้ไปยัง IP ของ VPS เชื่อมต่อผ่าน SSH และเปิดเฉพาะพอร์ตที่จำเป็น:

ssh root@SERVER_IP

apt update && apt upgrade -y
apt install -y ca-certificates curl ufw

ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

2. ติดตั้ง Docker

เพิ่มคลังแพ็กเกจ Docker อย่างเป็นทางการ:

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

cat > /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin

3. เริ่มต้น Actual Budget

mkdir -p /opt/actual-budget/data
cd /opt/actual-budget

cat > compose.yml <<'EOF'
services:
  actual:
    image: actualbudget/actual-server:latest
    restart: unless-stopped
    ports:
      - "127.0.0.1:5006:5006"
    volumes:
      - ./data:/data
EOF

docker compose up -d
docker compose ps

การผูกบริการไว้กับ 127.0.0.1 จะป้องกันไม่ให้พอร์ต 5006 ถูกเปิดออกสู่อินเทอร์เน็ตโดยตรง งบประมาณถูกจัดเก็บไว้ใน /opt/actual-budget/data และจะไม่ถูกลบเมื่ออัปเดตคอนเทนเนอร์

4. เปิดใช้งาน HTTPS

apt install -y caddy

cat > /etc/caddy/Caddyfile <<'EOF'
budget.example.com {
    reverse_proxy 127.0.0.1:5006
}
EOF

caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy

เมื่อ DNS ชี้มายัง VPS และพอร์ต 80 กับ 443 เข้าถึงได้ Caddy จะขอใบรับรอง TLS ให้อัตโนมัติ เปิด https://budget.example.com แล้วตั้งรหัสผ่านเซิร์ฟเวอร์ที่ยาวและคาดเดาได้ยาก

วิธีตั้งค่างบประมาณแรกของคุณ

คุณไม่จำเป็นต้องเริ่มด้วยการนำเข้าประวัติย้อนหลังหลายปี วิธีที่เร็วกว่า คือเพิ่มบัญชีที่ใช้อยู่ในปัจจุบัน ระบุยอดคงเหลือปัจจุบัน และสร้างหมวดหมู่สำหรับการชำระเงินที่จำเป็น ค่าใช้จ่ายประจำวัน เงินออม และค่าใช้จ่ายที่เกิดขึ้นไม่สม่ำเสมอ

จัดสรรเฉพาะเงินที่มีอยู่แล้วจนจำนวน “To Budget” เป็นศูนย์ จากนั้นนำเข้าธุรกรรมล่าสุด ตรวจสอบยอดคงเหลือ และสร้างกฎสำหรับร้านค้าที่ใช้บ่อย ค่าสมาชิก และการโอน

หมวดหมู่ควรช่วยให้คุณตัดสินใจได้ ซองแยกสำหรับ “ค่ารักษาพยาบาล” “ค่าซ่อมอุปกรณ์” และ “ค่าสมาชิกรายปี” มีประโยชน์มากกว่าหมวด “เบ็ดเตล็ด” เพียงหมวดเดียว

สิ่งที่ควรรู้เกี่ยวกับการซิงโครไนซ์กับธนาคาร

การเชื่อมต่อธนาคารไม่ได้เปิดให้ใช้ในทุกประเทศและขึ้นอยู่กับผู้ให้บริการ API ที่รองรับ การใช้งานต้องมีเซิร์ฟเวอร์ของคุณเองและข้อมูลรับรองเพิ่มเติม Actual Budget ไม่ได้ซิงโครไนซ์โดยอัตโนมัติทั้งหมด ผู้ใช้ต้องเริ่มการทำงานจากอินเทอร์เฟซ

โทเค็นสำหรับเชื่อมต่อธนาคารจะถูกเก็บแยกไว้บนเซิร์ฟเวอร์และไม่อยู่ภายใต้การเข้ารหัสแบบต้นทางถึงปลายทางของงบประมาณ หากธนาคารใดไม่รองรับ คุณสามารถนำเข้าธุรกรรมจากใบแจ้งยอดได้ โดยทั่วไป OFX และ QFX สะดวกกว่า CSV เพราะมีตัวระบุธุรกรรม

การเข้ารหัส การสำรองข้อมูล และการอัปเดต

การเข้ารหัสแบบต้นทางถึงปลายทางต้องเปิดใช้งานแยกสำหรับแต่ละงบประมาณ เก็บรหัสผ่านไว้ในตัวจัดการรหัสผ่าน เพราะเซิร์ฟเวอร์ไม่สามารถกู้คืนรหัสนี้ได้ Actual Budget ไม่ได้เข้ารหัสสำเนาภายในเครื่องด้วยตัวเอง ดังนั้นโทรศัพท์และคอมพิวเตอร์ควรได้รับการป้องกันด้วยรหัสล็อกและการเข้ารหัสดิสก์

การซิงโครไนซ์ไม่ใช่สิ่งทดแทนการสำรองข้อมูล ให้ส่งออกงบประมาณจากการตั้งค่าเป็นประจำ และคัดลอกไดเรกทอรีข้อมูลไปยังตำแหน่งอื่น:

cd /opt/actual-budget
docker compose stop
tar -czf /root/actual-budget-$(date +%F).tar.gz data
docker compose start

ย้ายไฟล์เก็บถาวรออกจาก VPS ก่อนอัปเดต ให้สร้างสำเนาอีกชุด แล้วเรียกใช้:

cd /opt/actual-budget
docker compose pull
docker compose up -d

สำหรับการใช้งานทั่วไป ให้เลือกแท็ก latest ที่เสถียร แทนแท็ก nightly ที่เป็นรุ่นทดลอง

ควรเลือก VPS แบบใดสำหรับ Actual Budget?

อินสแตนซ์ส่วนตัวไม่จำเป็นต้องใช้เซิร์ฟเวอร์ประสิทธิภาพสูง Linux VPS พื้นฐานจาก tropic.host ก็เพียงพอสำหรับโฮสต์ Actual Budget, Caddy และซับโดเมนที่ใช้ HTTPS การเริ่มต้นด้วย RAM 1 GB เป็นทางเลือกที่เหมาะสม และค่อยเพิ่มทรัพยากรเมื่อคุณติดตั้งบริการแบบโฮสต์เองอื่น ๆ เพิ่ม

อย่าเปิดพอร์ต 5006 ออกสู่อินเทอร์เน็ตโดยตรง ให้ติดตั้งอัปเดตอย่างสม่ำเสมอ และเก็บข้อมูลสำรองไว้อย่างน้อยหนึ่งชุดนอก VPS หลัก ความปลอดภัยของบริการแบบโฮสต์เองขึ้นอยู่กับวิธีที่เจ้าของตั้งค่า

ข้อจำกัดของ Actual Budget

Actual Budget ต้องดูแลรักษาด้วยตัวเอง การซิงโครไนซ์กับธนาคารจำกัดตามประเทศและผู้ให้บริการ รุ่นมือถือทำงานเป็น PWA และหากทำรหัสผ่านการเข้ารหัสหาย อาจทำให้ไม่สามารถเข้าถึงงบประมาณได้

บริการนี้ไม่เหมาะกับทุกคน แต่แก้โจทย์เฉพาะได้ดี นั่นคือรวมการจัดงบแบบซอง ระบบอัตโนมัติ และการควบคุมข้อมูลไว้ด้วยกัน โดยไม่ต้องจ่ายค่าสมาชิก

สรุป

Actual Budget เปลี่ยนการติดตามค่าใช้จ่ายให้กลายเป็นแผน: เงินทุกจำนวนที่คุณได้รับจะถูกกำหนดหน้าที่ไว้ล่วงหน้า แอปทำงานภายในเครื่อง ซิงโครไนซ์ผ่านเซิร์ฟเวอร์ของคุณเอง และรองรับการนำเข้า กฎ รายงาน และการเข้ารหัส

VPS ขนาดเล็กก็เพียงพอสำหรับการใช้งาน หลังติดตั้ง สิ่งสำคัญที่สุดคือเปิดใช้ HTTPS เก็บรหัสผ่านการเข้ารหัสอย่างปลอดภัย และตั้งค่าการสำรองข้อมูลภายนอก

FAQ

Actual Budget ใช้งานได้ฟรีหรือไม่?

ใช่ แอปเป็นโอเพนซอร์สและไม่มีค่าสมาชิกบังคับ ค่า VPS โดเมน และพื้นที่สำรองข้อมูลจะคิดแยกต่างหาก

จำเป็นต้องติดตั้ง Actual Budget บน VPS หรือไม่?

ไม่จำเป็น คุณสามารถใช้งานภายในเครื่องเดียวได้ เซิร์ฟเวอร์จำเป็นเมื่อต้องการซิงโครไนซ์ระหว่างอุปกรณ์ เชื่อมต่อธนาคาร ใช้ API หรือเข้าถึงผ่านเว็บได้ตลอดเวลา

เชื่อมต่อ Actual Budget กับธนาคารได้หรือไม่?

ได้ หากธนาคารและภูมิภาคของคุณรองรับโดยผู้ให้บริการที่มีอยู่ มิฉะนั้นสามารถนำเข้าธุรกรรมจากไฟล์ CSV, QIF, OFX, QFX หรือ CAMT ได้

การเก็บงบประมาณไว้บนเซิร์ฟเวอร์ของตัวเองปลอดภัยหรือไม่?

ปลอดภัยเมื่อกำหนดค่าอย่างถูกต้อง แต่เจ้าของต้องรับผิดชอบด้านความปลอดภัยเอง คุณต้องใช้ HTTPS รหัสผ่านที่ยาว การเข้ารหัส การอัปเดต และการสำรองข้อมูลภายนอก

Actual Budget ต้องใช้ RAM เท่าไร?

ไม่มีข้อกำหนดขั้นต่ำอย่างเป็นทางการ สำหรับอินสแตนซ์ส่วนตัว RAM 1 GB เป็นจุดเริ่มต้นเชิงปฏิบัติ หากโฮสต์บริการอื่นด้วย ควรจัดสรร RAM 2 GB