Chuyển tới nội dung chính

Phân chia môi trường

Phần mềm có hai bản chạy song song:

  • Bản thử — để nhà trường xem trước và góp ý
  • Bản chính thức — bản cán bộ dùng thật hằng ngày

Mọi thay đổi đều cho chạy ở bản thử trước. Nhà trường xem và duyệt xong mới đưa lên bản chính thức. Nguyên tắc này để người dùng không bao giờ gặp tính năng nửa vời trong lúc đang làm việc.

Ngoài hai bản trên, đội phát triển còn một bản chạy trên máy cá nhân khi lập trình.

:::note Phần còn lại của trang này là nội dung kỹ thuật Cán bộ nhà trường chỉ cần đọc tới đây. Phần dưới dành cho đội phát triển và người quản trị máy chủ. :::

Bảng môi trường

Môi trườngTên miềnMục đíchAi truy cập
devlocalhostPhát triển trên máy cá nhânLập trình viên
stagingstg.sotaylop.comNghiệm thu nội bộ, UAT trước khi phát hànhĐội dự án, người nghiệm thu
productionsotaylop.comBản chạy thật cho pilotNgười dùng cuối tại trường

Đường dẫn

devstagingproduction
Ứng dụnghttp://localhost:5173https://stg.sotaylop.comhttps://sotaylop.com
Tài liệuhttp://localhost:3000https://stg.sotaylop.com/docs/https://sotaylop.com/docs/

Tài liệu nằm ở đường dẫn con /docs/ để root domain dành cho bản demo ứng dụng.

Hạ tầng

Cả staging và production chạy trên cùng một VPS (180.93.43.225), tách nhau bằng nginx server block và cổng nội bộ riêng. Máy này đang chạy sẵn vài dịch vụ khác, nên mỗi dịch vụ mới phải chọn cổng chưa dùng.

CổngĐang dùng bởi
3003Habits tracker (sotaylop.com hiện tại)
3100 / 3101hoc-tieng-han blue / green
3102hoc-tieng-han staging

:::warning Tên miền chính đang bận sotaylop.com hiện trỏ về ứng dụng Habits tracker (habits.service, cổng 3003). Trước khi dùng tên miền này cho production của ADang, phải xử lý ứng dụng đó — chuyển sang tên miền khác hoặc gỡ bỏ. Đây là quyết định cần xác nhận vì ứng dụng đang chạy thật. :::

Quy trình phát hành

dev (máy cá nhân)
└─ push nhánh → PR
└─ merge vào main
└─ deploy staging → nghiệm thu tại stg.sotaylop.com
└─ duyệt → deploy production

Deploy tài liệu

npm --prefix docs-site run deploy:staging
npm --prefix docs-site run deploy:production

Xem chi tiết cấu hình máy chủ tại Hướng dẫn cài đặt & vận hành.

Biến môi trường của tài liệu

Docusaurus chọn cấu hình theo biến DOCS_ENV (dev · staging · production), khai báo trong docs-site/docusaurus.config.js. Bản staging hiển thị banner cảnh báo để không nhầm với bản chính thức.