Photo by Brett Jordan / Unsplash

บันทึกการตั้งค่า Ghost Config Mail ด้วย Mailgun

Ghost Sep 12, 2022

เนื่องจากว่าเราทำการใช้งาน Ghost แบบ Self Hosted ด้วยตัวเอง ทำให้เราต้องมาทำการกำหนด Mail Configuration ให้ Ghost

โดยตัว Mail หลักๆ เราจะแบ่งเป็น 2 ส่วนคือ

  1. Bulk Email - เพื่อให้เราส่งอีเมล์เวลาโพส หรือ Newsletter ให้กับสมาชิกได้
  2. Auth Email - สำหรับส่ง Link เวลา Login (Passwordless) หรือลืม Password เป็นต้น

ตั้งค่า Bulk Email

ขั้นตอนการตั้งค่า ก็คือเข้าหน้า Ghost Admin -> Settings -> Email Newsletter

จากนั้นเลือก Mailgun Configuration ครับ โดยใส่ Domain และ Private Key ดูได้จาก Link ได้เลย ว่าเราจะหา Private Key ได้ยังไง

หากเรายังไม่มี Domain Mailgun ก็ทำการเพิ่ม Domain และตั้งค่า DNS ตาม Instruction ของ Mailgun ได้เลย ว่าต้องใส่ TXT อะไรใส่ CNAME อะไร มี Value อะไร จากนั้นก็ทำการ Verify Domain ให้ผ่าน เป็นอันเรียบร้อย

ทีนี้เวลาเราโพสบทความ เราก็สามารถเลือกว่าจะโพสบทความ พร้อมส่ง Email  ได้แล้ว


ตั้งค่า Auth Email

การตั้งค่า Auth Email เราต้อง SSH เข้าไปที่เครื่องของเราก่อน จากนั้น Login ด้วย Ghost User (กรณีที่ใช้ Ghost One Click Installation ของ Digital Ocean)

sudo -i -u ghost-mgr

เข้าไปที่ folder /var/www/ghost และทำการแก้ไขไฟล์ config.production.json เป็นข้อมูลของ Mailgun ของเรา แบบนี้

"mail": {
  "transport": "SMTP",
  "options": {
    "service": "Mailgun",
    "auth": {
      "user": "[email protected]",
      "pass": "your_pass"
    }
  }
},

โดยที่ค่า user ได้มาจาก SMTP Credentials ของ Domain Mailgun เรานั่นเอง (ถ้าไม่รู้ Password ก็กด Reset Password ใหม่ หรือจะ New User ก็ได้) จากนั้นก็เอา user และ password มาใส่ ใน config

จากนั้นทำการ Restart Ghost 1 ที เราก็สามารถ รับ Auth Email (พวกสมัคร account / forgot password) ได้แล้ว

ghost restart

เพียงแค่นี้ เราก็สามารถใช้งาน Email ได้ทั้ง Auth Email และ Bulk Email แล้ว 🎉


แหล่งอ้างอิง

Configuration - Adapt your publication to suit your needs
Find out how to configure your Ghost publication or override Ghost’s default behaviour with robust config options, including mail, storage, scheduling and more!

Tags

Chai Phonbopit

Frontend Dev ธรรมดาคนนึง ประสบการณ์ 10 ปีนิดๆ ปัจจุบันกำลังสนใจเรื่องของ Crypto, Web3, Blockchain และ Smart Contract กำลังหัดเรียนรู้ยามว่าง 👻