Hướng dẫn triển khai code lên hosting cPanel BKNS bằng VibeCode Deploy: kết nối bằng Personal Access Token (PAT)
ann
23/09/2026
57 Lượt xem
Chia sẻ bài viết
VibeCode Deploy là plugin trong cPanel của BKNS, nằm ở nhóm BKNS trên trang Tools. Plugin giúp bạn đưa mã nguồn từ repo (repository) Git trên GitHub lên hosting. Plugin tải code về, nhận diện loại ứng dụng, chạy các lệnh cài đặt và build bạn khai báo, triển khai ứng dụng lên tên miền bạn chọn, đồng thời ghi log cho từng lần triển khai. Plugin hỗ trợ ứng dụng chạy trên máy chủ qua Passenger (Python (Passenger), Node/Express (Passenger), Next.js (SSR, Passenger)) và ứng dụng tĩnh (Vue/React (SPA), Static thuần).
Bài này hướng dẫn kết nối plugin với repo GitHub bằng Personal Access Token (PAT). PAT là mã truy cập bạn tự tạo trong tài khoản GitHub. Bạn dán token này vào ô Hoặc token (PAT) của plugin để plugin truy cập repo và lấy mã nguồn về hosting. Theo gợi ý của plugin, token cần quyền Contents:read, và cần thêm Webhooks:write nếu bạn dùng chế độ Auto (ứng dụng tự cập nhật mỗi khi code trên GitHub thay đổi).
Bạn nên dùng cách này khi muốn tự kiểm soát quyền truy cập: bạn có thể giới hạn token chỉ truy cập đúng repo cần triển khai và đặt thời hạn sử dụng cho token. Cách này dùng được với cả repo riêng tư (private).
Bạn tạo mỗi deployment qua ba màn hình trong plugin: 1. Nguồn Git → 2. Nhận diện → 3. Cấu hình. Trong bài này, Bước 1 và Bước 2 mở plugin và tạo deployment mới. Bước 3 đến Bước 7 tạo và sao chép token fine-grained trên GitHub. Bước 8 dán token vào plugin ở màn hình 1. Nguồn Git. Bước 9 đến Bước 12 nhận diện ứng dụng, cấu hình, triển khai và kiểm tra kết quả.
Nếu muốn kết nối theo cách khác, bạn xem bài hướng dẫn kết nối bằng GitHub App, hoặc bài hướng dẫn kết nối bằng URL Git (HTTPS, repo công khai) và SSH Git (Deploy key, repo riêng tư).
Quy ước trong bài: “Bước N” là số bước của bài hướng dẫn này. Tên in đậm như Bước 1 — Nguồn code là tiêu đề màn hình trong plugin. Tên tài khoản GitHub, tên repo, tên App và tên miền xuất hiện trong ảnh chỉ là dữ liệu mẫu, bạn hãy thay bằng thông tin của mình.
Tóm Tắt Bài Viết
Chuẩn bị trước khi bắt đầu
- Tài khoản hosting cPanel tại BKNS đã có plugin VibeCode Deploy (trang Tools, nhóm BKNS).
- Tài khoản GitHub và repo chứa mã nguồn cần triển khai. Bạn cần biết chính xác tên nhánh (branch) cần triển khai, ví dụ main.
- Tài khoản GitHub bạn dùng để tạo token phải có quyền trên repo cần triển khai. Repo có thể thuộc tài khoản của bạn, hoặc thuộc một tổ chức mà bạn chọn được ở mục Resource owner khi tạo token.
- Tên miền hoặc subdomain dùng để chạy ứng dụng đã có sẵn trong tài khoản cPanel. Nếu chưa có, bạn tạo trước tại cPanel → Domains (đúng như dòng gợi ý dưới ô Domain của plugin), rồi quay lại chọn. Với ứng dụng tĩnh, document root của tên miền đó phải còn trống.
Mở VibeCode Deploy và tạo deployment mới
Trước tiên, bạn mở plugin và tạo một deployment mới. Sau đó bạn giữ tab này mở trong lúc tạo token trên GitHub.
Bước 1: Mở plugin VibeCode Deploy
Plugin VibeCode Deploy nằm trong trang Tools của cPanel, thuộc nhóm BKNS ở trên cùng (phía trên nhóm Email).
- Đăng nhập vào cPanel của hosting.
- Mở trang Tools (nếu đang ở trang khác, bạn bấm mục Tools ở cột menu bên trái), rồi tìm nhóm BKNS ở trên cùng.
- Bấm vào mục VibeCode Deploy (biểu tượng hộp màu cam, được mũi tên đỏ đánh dấu trong ảnh).

Lưu ý: Nếu không thấy nhóm BKNS, bạn có thể gõ VibeCode vào ô Search Tools ở góc trên bên phải cPanel để tìm nhanh.
Bước 2: Thêm deployment mới
Trang chính của plugin (tiêu đề VibeCode Deploy) là danh sách các deployment bạn đã tạo. Lần đầu sử dụng, trang hiển thị thông báo “Chưa có deployment nào. Bấm Thêm deployment để bắt đầu.”
Với cách kết nối bằng token, ở màn hình Bước 1 — Nguồn code bạn sẽ dùng ô Hoặc token (PAT) để dán token, danh sách Chọn repo để chọn repo và ô Branch để nhập nhánh (Bước 8). Bạn không cần dùng các nút trong khung Kết nối GitHub, vì khung này dành cho cách kết nối bằng GitHub App.
- Bấm nút màu xanh + Thêm deployment ở góc trên bên phải khung VibeCode Deploy (được mũi tên đỏ đánh dấu trong ảnh).
- Chờ trang chuyển sang VibeCode Deploy — Thêm / Sửa. Biểu mẫu Thêm deployment hiện ra, gồm ba bước 1. Nguồn Git → 2. Nhận diện → 3. Cấu hình, và đang ở màn hình Bước 1 — Nguồn code.
- Giữ nguyên tab trình duyệt này ở màn hình Bước 1 — Nguồn code, rồi mở GitHub trong một tab khác để tạo token (Bước 3 đến Bước 7).

Tạo Personal Access Token trên GitHub
Các bước này thực hiện trên GitHub, ở một tab trình duyệt khác. Bạn tạo token loại fine-grained, chỉ cho phép truy cập repo cần triển khai với quyền tối thiểu.
Bước 3: Mở Developer settings trên GitHub
Token được tạo trong phần cài đặt dành cho nhà phát triển của tài khoản GitHub. Trước tiên, bạn mở trang cài đặt tài khoản (Settings), sau đó vào mục Developer settings ở cuối cột menu bên trái.
- Mở một tab trình duyệt mới (giữ nguyên tab VibeCode Deploy) và đăng nhập GitHub bằng tài khoản có quyền trên repo cần triển khai: repo thuộc chính tài khoản này, hoặc thuộc một tổ chức mà tài khoản này chọn được ở mục Resource owner (Bước 5).
- Mở trang cài đặt tài khoản. Bạn có thể truy cập thẳng https://github.com/settings/profile
, hoặc bấm ảnh đại diện ở góc trên bên phải rồi chọn Settings. - Cuộn cột menu bên trái xuống dưới cùng, bên dưới nhóm Archives, rồi bấm Developer settings.

Lưu ý: Bạn hãy dùng trang Settings của tài khoản (địa chỉ bắt đầu bằng github.com/settings/), không dùng trang Settings bên trong một repo.
Bước 4: Mở mục Fine-grained tokens và tạo token mới
Tiếp theo, bạn tạo Personal Access Token trong trang Developer Settings, theo đường dẫn Settings → Developer settings → Personal access tokens → Fine-grained tokens. Dòng gợi ý dưới ô Hoặc token (PAT) của plugin cũng chỉ tới vị trí này: “Tạo tại GitHub → Settings → Developer settings → Fine-grained tokens.”
- Sau khi bạn bấm Developer settings (Bước 3), trang Developer Settings mở ra, cột bên trái gồm GitHub Apps, OAuth Apps và Personal access tokens.
- Ở cột bên trái, bấm Personal access tokens để mở rộng mục này.
- Chọn Fine-grained tokens. Trang Fine-grained personal access tokens hiện ra.
- Bấm nút Generate new token màu xanh lá ở giữa trang.

Lưu ý: Nếu tài khoản đã có token khác, trang sẽ hiển thị danh sách token thay cho dòng “No fine-grained tokens created”. Khi đó, nút Generate new token nằm ở góc trên bên phải trang.
Bước 5: Đặt tên, chọn chủ sở hữu, thời hạn và phạm vi repo cho token
Trang New fine-grained personal access token hiện ra. Tại đây, bạn khai báo thông tin cơ bản của token và giới hạn những repo mà token được phép truy cập.
- Nhập tên vào ô bắt buộc Token name, ví dụ connect-cpanel. Nếu tên chưa trùng với token nào khác, GitHub hiện dòng chữ xanh báo tên dùng được, ví dụ “‘connect-cpanel’ is available.”
- Ô Description không bắt buộc, bạn có thể để trống.
- Tại Resource owner, mở danh sách và chọn tài khoản (hoặc tổ chức) sở hữu repo cần triển khai.
- Tại Expiration, chọn thời hạn cho token. Ảnh ví dụ chọn 30 days (Oct 21, 2026); ngày trong ngoặc là ngày hết hạn và thay đổi theo ngày bạn tạo token.
- Tại Repository access, chọn Only select repositories như ảnh ví dụ để chỉ cấp quyền cho repo cần triển khai. Nếu muốn token dùng được cho mọi repo của bạn, hãy chọn All repositories.

Lưu ý: Theo ghi chú của GitHub, token chỉ thay đổi được tài nguyên thuộc Resource owner đã chọn. Nếu repo thuộc một tổ chức, bạn hãy chọn đúng tổ chức đó.
Lưu ý: Lựa chọn Public repositories chỉ cho quyền đọc các repo công khai, nên không dùng được với repo private.
Lưu ý: Khi token hết hạn theo Expiration, GitHub sẽ không chấp nhận token đó nữa và bạn cần tạo token mới. Bạn nên ghi lại ngày hết hạn.
Bước 6: Chọn repo, cấp quyền cho token và bấm Generate token
Khi đã chọn Only select repositories, ngay bên dưới lựa chọn này có nút Select repositories để chọn repo. Theo ghi chú của GitHub, bạn phải chọn ít nhất một repo và tối đa 50 repo.
Tiếp theo là phần Permissions, nơi bạn cấp quyền cho token. GitHub khuyên chỉ cấp những quyền tối thiểu cần dùng (“Choose the minimal permissions necessary for your needs.”). Với VibeCode Deploy, token cần quyền đọc nội dung repo (Contents:read), và cần thêm quyền quản lý webhook (Webhooks:write) nếu bạn dùng chế độ Auto, đúng như gợi ý trong ô Hoặc token (PAT) của plugin.
- Bấm nút Select repositories rồi chọn repo cần triển khai. Trong ảnh ví dụ là repo qlnn; bạn hãy chọn repo của mình.
- Kiểm tra dòng “Selected 1 repository.” và tên repo trong danh sách ngay bên dưới. Con số thay đổi theo số repo bạn chọn.
- Tại phần Permissions, giữ tab Repositories (quyền trên repo) đang được chọn, rồi bấm nút + Add permissions ở góc trên bên phải khung.
- Trong danh sách quyền hiện ra, chọn Contents và đặt mức truy cập là Read-only (chỉ đọc). GitHub sẽ tự thêm kèm quyền Metadata ở mức Read-only; đây là quyền bắt buộc.
- Nếu dùng chế độ Auto (tự triển khai lại khi code trên GitHub thay đổi, chọn ở ô Chế độ tại Bước 10; ô này mặc định là Auto), bấm + Add permissions thêm lần nữa, chọn Webhooks và đặt mức truy cập là Read and write.
- Kiểm tra lại danh sách quyền trong khung: con số cạnh tab Repositories tăng lên (thay cho 0) và dòng “No repository permissions added yet” không còn nữa.
- Bấm nút Generate token màu xanh lá ở cuối trang. Theo dòng chú thích bên dưới (“This token will be ready for use immediately.”), token dùng được ngay sau khi tạo.

Lưu ý: Ảnh minh hoạ được chụp trước khi thêm quyền, nên khung Permissions vẫn hiện “No repository permissions added yet”. Sau khi bạn thêm quyền, các quyền đã chọn sẽ hiện trong khung này.
Lưu ý: Không cấp quyền ở tab Account và không chọn mức Read and write cho Contents. Plugin chỉ cần đọc code; cấp thừa quyền sẽ tăng rủi ro nếu token bị lộ.
Bước 7: Sao chép token vừa tạo
GitHub chuyển về trang Fine-grained personal access tokens. Token mới (ví dụ connect-cpanel) xuất hiện trong danh sách, kèm trạng thái Never used và ngày hết hạn (ví dụ “Expires on Wed, Oct 21 2026”). Chuỗi token có dạng github_pat_… và chỉ hiển thị một lần trong khung màu xanh lá.
- Bấm nút sao chép (biểu tượng hai ô vuông chồng lên nhau) ở bên phải chuỗi token, trong khung màu xanh lá.
- Giữ token ở nơi an toàn để dán vào plugin tại Bước 8.

Lưu ý: GitHub cảnh báo “Make sure to copy your personal access token now as you will not be able to see this again.”, nghĩa là sau khi rời trang này, bạn không xem lại được token. Nếu quên sao chép, bạn hãy bấm Delete để xoá token đó rồi tạo token mới.
Lưu ý: Bạn hãy giữ token như giữ mật khẩu: không gửi qua email hay tin nhắn, không đưa vào mã nguồn, và không chụp màn hình khi chưa che kín. Nếu nghi token bị lộ, bạn hãy bấm Delete để thu hồi ngay.
Kết nối token và chọn repo trong plugin
Bạn quay lại tab VibeCode Deploy để dán token, chọn repo và nhánh cần triển khai.
Bước 8: Dán token vào VibeCode Deploy và chọn repo
Sau khi sao chép token, bạn quay lại tab VibeCode Deploy đang mở ở màn hình Bước 1 — Nguồn code (Bước 2). Biểu mẫu Thêm deployment đang ở bước 1. Nguồn Git. Nếu đã lỡ đóng tab đó, bạn làm lại Bước 1 và Bước 2 để mở lại màn hình này.
- Ở dòng Nguồn code, giữ lựa chọn Repo Git.
- Dán token đã sao chép vào ô Hoặc token (PAT). Các ký tự của token sẽ hiện dưới dạng dấu chấm.
- Bấm nút Kết nối ngay bên phải ô token.
- Chờ dòng xác nhận bắt đầu bằng dấu “✓” kèm tên tài khoản GitHub xuất hiện ngay dưới ô token (trong ảnh ví dụ, tên này đã được che). Dòng này cho biết kết nối đã thành công.
- Mở danh sách Chọn repo và chọn repo cần triển khai. Trong ảnh ví dụ là repo qlnn; bạn hãy chọn repo của mình. Ô Hoặc Clone URL để trống như ảnh ví dụ.
- Kiểm tra ô Branch và nhập đúng tên nhánh cần triển khai. Giá trị mặc định là main.
- Bấm nút Tiếp tục → ở cuối khung.

Lưu ý: Trong ảnh ví dụ, tài khoản đã từng kết nối GitHub App, nên khung Kết nối GitHub phía trên báo đã kết nối App (ví dụ App VibeCode Deploy – test) và ghi rõ “danh sách repo bên dưới lấy từ App này”. Khi dùng token, bạn chỉ cần thao tác với ô Hoặc token (PAT). Trạng thái khung Kết nối GitHub trên màn hình của bạn có thể khác ảnh.
Lưu ý: Nếu cạnh nút Tiếp tục → hiện dòng “✗ Chọn repo hoặc nhập Clone URL trước”, nghĩa là plugin chưa nhận được repo. Bạn hãy chọn repo trong Chọn repo (hoặc nhập vào ô Hoặc Clone URL) rồi bấm lại.
Lưu ý: Nếu nhánh ở ô Branch không có trong repo, hoặc token không đủ quyền đọc repo, thì ở bước 2. Nhận diện plugin sẽ báo lỗi “Không clone được (kiểm tra token/branch)” (xem ảnh tại Bước 9). Khi đó, bạn hãy bấm ← Quay lại về màn hình này, kiểm tra lại tên nhánh và quyền của token.
Nhận diện, cấu hình và triển khai
Sau khi plugin nhận được repo và nhánh, bạn hoàn tất hai màn hình 2. Nhận diện và 3. Cấu hình, rồi lưu, triển khai và kiểm tra kết quả.
Bước 9: Nhận diện loại ứng dụng
Biểu mẫu chuyển sang bước 2. Nhận diện, màn hình Bước 2 — Nhận diện ứng dụng. Plugin tải (clone) code từ repo và nhánh đã chọn để xác định loại ứng dụng.
Ảnh minh hoạ được chụp lúc nhập sai tên nhánh: ô Branch được nhập main-1, một nhánh không có trong repo. Vì vậy, plugin báo “✗ Không clone được (kiểm tra token/branch): … fatal: Remote branch main-1 not found in upstream origin — chọn loại thủ công bên dưới để đi tiếp.”
- Đọc thông báo phía trên ô Loại app. Nếu plugin báo “Không clone được”, bấm ← Quay lại để về màn hình Bước 1 — Nguồn code (Bước 8), sửa lại repo, tên nhánh hoặc token rồi bấm Tiếp tục → lần nữa.
- Nếu muốn plugin nhận diện lại, bấm nút Nhận diện lại bên phải ô Loại app.
- Kiểm tra ô Loại app (danh sách được mũi tên đỏ đánh dấu). Nếu plugin chưa xác định được loại (ô hiển thị — chọn loại —), mở danh sách và chọn đúng loại ứng dụng: Python (Passenger), Node/Express (Passenger), Next.js (SSR, Passenger), Vue/React (SPA) hoặc Static thuần.
- Bấm Tiếp tục → (được mũi tên đỏ đánh dấu) để sang bước 3. Cấu hình.

Lưu ý: Với cách kết nối bằng token, khi gặp lỗi “Không clone được”, bạn hãy kiểm tra: nhánh ở ô Branch có trong repo, token còn hạn (Bước 5), repo đã được chọn cho token và token có quyền Contents (Bước 6).
Lưu ý: Tự chọn loại ứng dụng giúp bạn đi tiếp, nhưng nếu lỗi do sai nhánh hoặc không truy cập được repo thì khi triển khai plugin vẫn không lấy được code. Bạn nên sửa nguyên nhân lỗi trước.
Lưu ý: Các loại có chữ Passenger là ứng dụng có code chạy trên máy chủ (Python, Node.js/Express, Next.js SSR). Vue/React (SPA) và Static thuần là ứng dụng tĩnh, không có code chạy trên máy chủ.
Bước 10: Cấu hình ứng dụng
Tại bước 3. Cấu hình (màn hình Bước 3 — Cấu hình ứng dụng), bạn khai báo tên app, tên miền chạy ứng dụng, các lệnh build và chạy, cùng một số tuỳ chọn khác.
Ảnh minh hoạ đánh dấu các mục nên xem kỹ: Số worker khi build, Thư mục giữ lại, nhóm Lệnh install / Lệnh build / Lệnh start, Email thông báo và nút Lưu & Deploy.
- Tại ô Tên app (a-z0-9_-), nhập tên ngắn chỉ gồm chữ thường, chữ số, dấu gạch dưới hoặc dấu gạch ngang (trong ảnh là tên mẫu qlnn).
- Tại ô Domain, chọn tên miền hoặc subdomain sẽ chạy ứng dụng (trong ảnh là tên miền mẫu labrsys.io.vn; bạn chọn tên miền của mình). Nếu tên miền dùng được, plugin hiện dòng “✓ Document root sẵn sàng: …” ngay bên dưới, kèm thư mục document root của tên miền đó (trong ảnh là public_html).
- Mục Application Path do plugin tự sinh, có dạng ~/.autodeploy/deployments/<id>/current (id được tạo khi lưu). Bạn không cần nhập mục này.
- Tại ô Số worker khi build (số tiến trình chạy song song khi build, ví dụ khi Next.js sinh trang tĩnh), giữ giá trị 1 nếu dùng hosting chia sẻ, vì hosting chia sẻ thường chỉ có 1 CPU và bị giới hạn số tiến trình. Bạn chỉ tăng giá trị này khi máy chủ đủ mạnh.
- Tại ô Thư mục giữ lại, nhập các thư mục mà ứng dụng ghi dữ liệu vào (ảnh người dùng upload, file sinh ra…). Đường dẫn tính từ gốc repo và phân cách bằng dấu phẩy, ví dụ uploads, public/uploads. Để trống nếu ứng dụng không ghi file.
- Tại các ô Lệnh install, Lệnh build và Lệnh start, nhập lần lượt lệnh cài thư viện, lệnh build và lệnh khởi động phù hợp với dự án (ví dụ npm install và npm run build với dự án Node.js). Ô nào không cần thì để trống; trong ảnh minh hoạ, cả ba ô đều để trống.
- Tại ô Biến môi trường (.env), nhập các biến môi trường, mỗi dòng một biến theo dạng KEY=VALUE.
- Tại ô Email thông báo, nhập email để nhận thông báo khi triển khai lỗi. Nếu bỏ trống, bạn sẽ không nhận email.
- Tại ô Chế độ, chọn Auto để ứng dụng tự cập nhật mỗi khi code trên GitHub thay đổi. Nếu chọn Manual, ứng dụng vẫn chạy nhưng không tự cập nhật khi GitHub thay đổi.
- Kiểm tra lại toàn bộ thông tin, rồi bấm nút Lưu & Deploy ở cuối biểu mẫu.

Lưu ý: Ô Chế độ mặc định là Auto. Ở chế độ này, token cần có quyền Webhooks:write như gợi ý của plugin (quyền Webhooks ở mức Read and write, cấp tại Bước 6). Nếu token không có quyền này, bạn nên đổi sang Manual: theo ghi chú của plugin, ứng dụng vẫn chạy, chỉ không tự cập nhật khi GitHub thay đổi.
Lưu ý: Tên miền phải có sẵn trong tài khoản. Nếu cần tên miền mới, bạn tạo tại cPanel → Domains trước, rồi quay lại chọn. Ứng dụng tĩnh yêu cầu document root của tên miền còn trống, vì VibeCode Deploy trỏ document root đó vào bản build (plugin không sửa cấu hình Apache).
Lưu ý: Bạn có thể mở thư mục ~/apps/<tên app> trong File Manager để xem code đang chạy. Thư mục này được tạo lại từ repo sau mỗi lần triển khai, nên mọi chỉnh sửa trực tiếp sẽ mất ở lần triển khai sau. Bạn hãy sửa code trong Git.
Lưu ý: File ghi vào các thư mục không khai báo trong Thư mục giữ lại sẽ mất sau mỗi lần triển khai. Dữ liệu trong thư mục giữ lại được giữ qua mọi lần triển khai hoặc rollback, nhưng sẽ bị xoá khi bạn xoá deployment. Ứng dụng tĩnh không nhận được file upload.
Lưu ý: Nếu repo đã đặt experimental.cpus trong next.config, giá trị đó được ưu tiên hơn Số worker khi build.
Lưu ý: Bạn nên khai báo mật khẩu và khoá API trong ô Biến môi trường (.env) thay vì đưa vào repo.
Bước 11: Lưu, triển khai và theo dõi log
Sau khi bạn bấm Lưu & Deploy, plugin lưu cấu hình và mở cửa sổ Log deploy — <tên app> (trong ảnh là Log deploy — qlnn, với qlnn là tên app mẫu). Góc trên bên phải cửa sổ hiển thị trạng thái, ban đầu là Queued (đang xếp hàng chờ xử lý). Khung log hiện dòng “Đang thu thập thông tin cấu hình deploy…”.
- Giữ cửa sổ log mở để theo dõi tiến trình triển khai.
- Bấm Mở trang log nếu muốn xem log ở trang riêng, hoặc bấm Đóng để đóng cửa sổ.
- Khi quá trình triển khai hoàn tất, mở tên miền đã chọn tại Bước 10 trên trình duyệt để kiểm tra ứng dụng.

Lưu ý: Nếu triển khai lỗi, bạn hãy đọc log để tìm nguyên nhân. Nếu đã điền Email thông báo tại Bước 10, bạn cũng sẽ nhận email báo lỗi.
Bước 12: Kiểm tra kết quả trong danh sách deployment
Khi quá trình triển khai hoàn tất, deployment vừa tạo xuất hiện trong danh sách ở trang chính của plugin (tiêu đề VibeCode Deploy). Bảng danh sách gồm các cột Tên, Loại, Nguồn, Chế độ, Trạng thái và Hành động.
Trong ảnh minh hoạ, deployment mẫu có Tên là qlnn, Loại là static, Nguồn là nhánh main, Chế độ là Manual và Trạng thái là Success (nhãn màu xanh lá), nghĩa là lần triển khai gần nhất đã thành công.
- Đóng cửa sổ Log deploy rồi quay về trang chính của plugin: bấm nút ← Danh sách ở góc trên bên phải màn hình Thêm deployment, hoặc mở lại VibeCode Deploy từ trang Tools của cPanel.
- Tìm dòng có tên app của bạn và kiểm tra cột Trạng thái hiển thị Success.
- Mở tên miền đã chọn cho ứng dụng trên trình duyệt để kiểm tra website đã chạy.
- Khi cần thao tác tiếp với deployment, dùng các nút ở cột Hành động: Deploy (triển khai lại), Rollback (quay về bản triển khai trước), Log (xem log), Sửa (sửa cấu hình deployment), Mở code (xem code đang chạy), Bật auto (chuyển sang chế độ tự cập nhật khi code trên GitHub thay đổi) và Xoá (nút màu đỏ, xoá deployment).

Lưu ý: Nút Bật auto chỉ hiện khi deployment đang ở chế độ Manual như trong ảnh. Nếu bạn đã chọn Auto tại Bước 10, cột Chế độ sẽ hiển thị Auto. Chế độ Auto cần token có quyền Webhooks:write, nên trước khi bấm Bật auto, bạn hãy chắc chắn token đã được cấp quyền Webhooks ở mức Read and write (Bước 6).
Lưu ý: Bấm Xoá sẽ xoá deployment, kể cả dữ liệu trong các thư mục đã khai báo ở Thư mục giữ lại. Bạn hãy sao lưu dữ liệu cần giữ trước khi xoá.
Lưu ý chung
- Bạn hãy giữ token PAT như giữ mật khẩu: không gửi qua email hay tin nhắn, không đưa vào mã nguồn, không chụp màn hình khi chưa che kín. Nếu nghi token bị lộ, hãy xoá (Delete) token đó trên GitHub ngay và tạo token mới.
- Bạn nên cấp quyền ở mức tối thiểu. Khi tạo token, hãy chọn Only select repositories và chỉ chọn repo cần triển khai, cấp Contents ở mức Read-only, chỉ thêm Webhooks ở mức Read and write khi dùng chế độ Auto, và không cấp quyền ở tab Account.
- Token fine-grained có thời hạn (Expiration). Khi token hết hạn, GitHub không chấp nhận token đó nữa, nên bạn hãy ghi lại ngày hết hạn để chủ động tạo token mới.
- Nếu ở Bước 9, màn hình Bước 2 — Nhận diện ứng dụng báo “Không clone được (kiểm tra token/branch)”, bạn hãy kiểm tra hai điểm. Thứ nhất, tên nhánh ở ô Branch phải có trong repo. Thứ hai, token phải còn hạn (Bước 5), có quyền Contents, và repo cần triển khai phải nằm trong danh sách repo đã chọn cho token (Bước 6). Sau đó bạn bấm ← Quay lại về màn hình Bước 1 — Nguồn code (Bước 8) để sửa.
- Mật khẩu và khoá API của ứng dụng nên được khai báo trong ô Biến môi trường (.env) của plugin, thay vì đưa vào repo.
- Khi gửi ảnh chụp màn hình cho bộ phận hỗ trợ BKNS hoặc chia sẻ ra ngoài, bạn hãy che token và thanh địa chỉ cPanel, vì địa chỉ này có chứa mã phiên đăng nhập (cpsess…).
- Bạn không nên sửa code trực tiếp trong thư mục ~/apps/<tên app>, vì thư mục này được tạo lại sau mỗi lần triển khai; hãy sửa trong Git. Dữ liệu do ứng dụng ghi ra (ví dụ file người dùng upload) phải nằm trong các thư mục đã khai báo ở Thư mục giữ lại. Trên hosting chia sẻ, bạn nên giữ Số worker khi build là 1.


































