ทำให้ใช้งานได้จริง
ใช้โดเมนของคุณเอง — พร้อมใบรับรองที่ตามมาเอง
แอปของคุณมีที่อยู่ที่ใช้งานได้อยู่แล้ว หน้านี้คือวิธีเปลี่ยนไปใช้ชื่อที่คุณเป็นเจ้าของ ตั้งแต่ระเบียนที่ต้องสร้าง สิ่งที่ระบบทำต่อเองโดยอัตโนมัติ ไปจนถึงสิ่งที่ต้องลบในวันที่เลิกใช้
1. บอกชื่อโดเมนกับเอราวัณ
สั่งผ่านเอไอหรือพิมพ์เองก็ได้ สิ่งที่ได้กลับมาคือระเบียน DNS ที่ต้องสร้าง — เป็นชุดที่ตรงกับชื่อที่คุณให้ไป ซึ่งเป็นเหตุผลว่าทำไมขั้นนี้ต้องมาก่อนไปแตะที่ผู้ให้บริการโดเมน
2. สร้างตามที่ระบบพิมพ์ออกมา
โดเมนย่อยใช้ระเบียนเดียว
ชนิด | ชื่อ | ค่า |
|---|---|---|
CNAME | shop | ingress.erawan.cloud |
ส่วนโดเมนหลักต้องใช้ สองระเบียน และระบบให้มาทั้งคู่โดยไม่ถามว่าต้องการอันไหน
ชนิด | ชื่อ | ค่า |
|---|---|---|
A | @ | ที่อยู่ที่ระบบพิมพ์ให้ |
CNAME | www | ingress.erawan.cloud |
ระเบียนที่สองไม่ใช่ของแถม โดเมนหลักเป็น CNAME ไม่ได้ — เป็นกฎของ DNS ไม่ใช่ของเรา — ดังนั้นโดเมนหลักต้องใช้ที่อยู่จริง ส่วน www ชี้ไปที่ชื่อได้ ถ้าสร้างแต่อันแรก เว็บของคุณจะทำงานได้สมบูรณ์ ในขณะที่ลิงก์ที่เพื่อนพิมพ์เองพร้อม www ตามความเคยชิน จะเข้าไม่ได้ และไม่มีอะไรแจ้งเตือนเรื่องนี้ คุณจะรู้ตอนมีคนมาบอก
3. ถ้าใช้ Cloudflare ต้องปิด proxy
เมฆสีส้มต้องเป็นสีเทา ถ้าเปิด proxy ไว้ ชื่อจะชี้ไปที่ Cloudflare ไม่ใช่มาที่เรา ใบรับรองจะออกไม่ได้ และข้อความผิดพลาดที่ได้ตามปกติจะไม่บอกอะไรที่ใช้ได้เลย เอราวัณจึงตรวจกรณีนี้เป็นการเฉพาะ แล้วบอกคุณตรงๆ แทน
4. รอ แล้วปล่อยให้ใบรับรองมาเอง
ไม่ต้องทำอะไรเพิ่ม เอราวัณจะไล่หาชื่อนั้นเอง และจะขอใบรับรองก็ต่อเมื่อเห็นแล้วว่าระเบียนชี้มาที่นี่จริง
ลำดับนี้ตั้งใจ และมันปกป้องคุณอยู่ Let's Encrypt จำกัดการตรวจสอบที่ล้มเหลวไว้ที่ 5 ครั้งต่อชั่วโมงต่อชื่อโฮสต์ ถ้ามีปุ่ม "ตรวจอีกครั้ง" ที่ยิงจริงทุกครั้งที่กด คุณจะโดนล็อกออกจากโดเมนของตัวเองภายในไม่กี่นาที หลังข้อความผิดพลาดของ ACME ที่ไม่มีใครอ่านออก การตรวจ DNS ก่อนแลกมาด้วยการรอ แต่ไม่มีทางเผาโควตาทิ้ง
คำสั่งนี้บอกว่าแต่ละชื่อกำลังรออะไรอยู่ การเปลี่ยน DNS ใช้เวลากระจายได้ถึงหนึ่งชั่วโมง ส่วนใบรับรองจะตามมาภายในหนึ่งถึงสองนาทีหลังจากที่ชื่อเริ่มมองเห็นได้
5. ทางเลือก: ส่งที่อยู่เดิมไปที่อยู่ใหม่
ที่อยู่ erawan.app ยังใช้งานได้และยังเป็นของคุณ ถ้าอยากให้ทุกคนไปจบที่โดเมนที่คุณเป็นเจ้าของ
ค่าเริ่มต้นคือปิด เพราะก่อนที่คุณจะบอก ที่อยู่ทั้งสองมีค่าเท่ากัน และไม่ควรมีใครในเรานี้ตัดสินแทนว่าอันไหนคือประตูหน้า
6. การเปลี่ยนชื่อแอปไม่ได้ย้ายที่อยู่
คำสั่งนี้เปลี่ยนชื่อที่คุณพิมพ์ในคำสั่ง และเปลี่ยนแค่นั้น ที่อยู่ erawan.app ยังคงเดิมทุกประการ เพราะมันถูกเก็บไว้ ไม่ได้สร้างขึ้นจากชื่อ — และเพราะมันคือคำสัญญาที่ให้ไว้กับคนที่ถือลิงก์อยู่แล้ว การเปลี่ยนที่อยู่คือสิ่งที่บทเรียนนี้พูดถึง ส่วนการเปลี่ยนชื่อเป็นคนละเรื่องที่แค่ดูใกล้กัน
add-on ก็ไม่ย้ายเช่นกัน Postgres ที่ต่อไว้ก่อนเปลี่ยนชื่อจะยังใช้ชื่อที่มาจากชื่อเดิม ซึ่งอ่านแล้วแปลกและเป็นการแลกที่ถูกต้อง เพราะทางเลือกอีกทางคือย้าย volume ที่เก็บข้อมูลของคุณ เพียงเพื่อให้ชื่อดูเรียบร้อย
7. ถ้าโปรเจกต์ของคุณมี erawan.yaml
มีสองสิ่งที่ใช้คำเดียวกัน erawan domain add ผูกโดเมนกับแอป ส่วน domain: ที่อยู่ใน erawan.yaml เป็นของcomponent ตัวใดตัวหนึ่ง ซึ่งคือส่วนของรุ่นแบบหลาย component ที่จะเป็นคนเสิร์ฟชื่อนั้นจริงๆ — และ subdomain: ที่อยู่ข้างกันคือการจองชื่อในเนมสเปซแบนของเอราวัณเอง ซึ่งเป็นแบบใครถึงก่อนได้ก่อน จึงต้องเขียนออกมาตรงๆ ไม่ใช่สร้างจากชื่อแอปของคุณ
แอปที่มี component เดียวไม่เจอเรื่องนี้เลย ถ้าคุณรันบริการเดียว คำสั่งข้างบนคือทั้งหมดที่ต้องรู้
8. วันที่เลิกใช้
การถอดโดเมนออกคืนที่อยู่ erawan.app ให้แอปเหมือนเดิม ไม่กระทบอะไร
ระเบียน DNS เป็นของคุณที่ต้องลบเอง เราลบให้ไม่ได้ — โซนอยู่ที่ผู้ให้บริการโดเมนของคุณ ไม่ได้อยู่ที่นี่ ถ้าปล่อยไว้ ระเบียนจะชี้ไปยังที่อยู่ที่ไม่ตอบรับชื่อนั้นอีกแล้ว ซึ่งแย่กว่าข้อผิดพลาดที่เห็นชัด เพราะเบราว์เซอร์จะแค่ค้างเฉยๆ