ErawanEN

ทำให้ใช้งานได้จริง

ใช้โดเมนของคุณเอง — พร้อมใบรับรองที่ตามมาเอง

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

1. บอกชื่อโดเมนกับเอราวัณ

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

erawan domain add my-app shop.example.com

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 ก่อนแลกมาด้วยการรอ แต่ไม่มีทางเผาโควตาทิ้ง

erawan domain ls my-app

คำสั่งนี้บอกว่าแต่ละชื่อกำลังรออะไรอยู่ การเปลี่ยน DNS ใช้เวลากระจายได้ถึงหนึ่งชั่วโมง ส่วนใบรับรองจะตามมาภายในหนึ่งถึงสองนาทีหลังจากที่ชื่อเริ่มมองเห็นได้

5. ทางเลือก: ส่งที่อยู่เดิมไปที่อยู่ใหม่

ที่อยู่ erawan.app ยังใช้งานได้และยังเป็นของคุณ ถ้าอยากให้ทุกคนไปจบที่โดเมนที่คุณเป็นเจ้าของ

erawan domain redirect my-app on

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

6. การเปลี่ยนชื่อแอปไม่ได้ย้ายที่อยู่

erawan rename my-app something-else

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

add-on ก็ไม่ย้ายเช่นกัน Postgres ที่ต่อไว้ก่อนเปลี่ยนชื่อจะยังใช้ชื่อที่มาจากชื่อเดิม ซึ่งอ่านแล้วแปลกและเป็นการแลกที่ถูกต้อง เพราะทางเลือกอีกทางคือย้าย volume ที่เก็บข้อมูลของคุณ เพียงเพื่อให้ชื่อดูเรียบร้อย

7. ถ้าโปรเจกต์ของคุณมี erawan.yaml

มีสองสิ่งที่ใช้คำเดียวกัน erawan domain add ผูกโดเมนกับแอป ส่วน domain: ที่อยู่ใน erawan.yaml เป็นของcomponent ตัวใดตัวหนึ่ง ซึ่งคือส่วนของรุ่นแบบหลาย component ที่จะเป็นคนเสิร์ฟชื่อนั้นจริงๆ — และ subdomain: ที่อยู่ข้างกันคือการจองชื่อในเนมสเปซแบนของเอราวัณเอง ซึ่งเป็นแบบใครถึงก่อนได้ก่อน จึงต้องเขียนออกมาตรงๆ ไม่ใช่สร้างจากชื่อแอปของคุณ

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

8. วันที่เลิกใช้

การถอดโดเมนออกคืนที่อยู่ erawan.app ให้แอปเหมือนเดิม ไม่กระทบอะไร

erawan domain rm my-app shop.example.com

ระเบียน DNS เป็นของคุณที่ต้องลบเอง เราลบให้ไม่ได้ — โซนอยู่ที่ผู้ให้บริการโดเมนของคุณ ไม่ได้อยู่ที่นี่ ถ้าปล่อยไว้ ระเบียนจะชี้ไปยังที่อยู่ที่ไม่ตอบรับชื่อนั้นอีกแล้ว ซึ่งแย่กว่าข้อผิดพลาดที่เห็นชัด เพราะเบราว์เซอร์จะแค่ค้างเฉยๆ

บทเรียนทั้งหมด

ใช้โดเมนของคุณเองกับเอราวัณ — Erawan