Skip to content
tinAI
Go back

GitHub - coast-guard/coasts: Cô lập và điều phối dịch vụ trên localhost cho các git worktrees.

Bài gốc: GitHub - coast-guard/coasts: Localhost service isolation and orchestration for git worktrees.

Tác giả: Unknown

Ngày đăng: Dịch ngày:

TL;DR

Coasts là một công cụ CLI giúp triển khai và quản lý các môi trường phát triển cục bộ bằng cách tận dụng git worktrees và Docker Compose. Giải pháp này hoạt động mà không cần thay đổi mã nguồn hiện tại và hỗ trợ làm việc ngoại tuyến tối ưu.

Coasts

Coasts (Containerized Hosts) là một công cụ dòng lệnh với giao diện người dùng cục bộ giúp chạy nhiều môi trường phát triển bị cô lập trên một máy tính duy nhất. Công cụ này hoạt động rất đơn giản với thiết lập hiện tại của bạn mà không cần thay đổi mã ứng dụng, chỉ cần một tệp Coastfile ở thư mục gốc của repository.

Nếu bạn đã sử dụng Docker Compose, Coasts có thể khởi động từ docker-compose.yml hiện tại của bạn; nếu không dùng Docker hay Compose, Coasts vẫn hoạt động tốt.

Cài đặt

Cài đặt bản phát hành công khai mới nhất:

$ eval "$(curl -fsSL https://coasts.dev/install)"

Truy cập coasts.dev để biết thêm về trang web, tài liệu, và hướng dẫn cài đặt.

Coastguard Overview

Tài liệu

Xem Coasts docs để có được tài liệu đầy đủ cho người dùng cuối.

Video Demo

Kho Dự Án Demo

Xem repository coasts-demo để có ví dụ cụ thể mà bạn có thể sử dụng để thử Coasts toàn diện.

Đóng góp

Để đóng góp, đọc hướng dẫn contributing guide cho các hướng dẫn PR.

Lưu ý: Coasts hiện là macOS ưu tiên trước. Phát triển trên Linux hoạt động nhưng các cổng chuẩn dưới 1024 yêu cầu thiết lập trước khi coast checkout có thể gắn chúng.

Prerequisites

Thiết lập Dev

Chạy script thiết lập một lần để phát triển giao diện web, biên dịch không gian làm việc, và liên kết coast-dev / coastd-dev vào ~/.local/bin:

$ ./dev_setup.sh

Ở lần chạy đầu tiên, nó sẽ thêm ~/.local/bin vào PATH của bạn — khởi động lại shell hoặc source ~/.zshrc để cập nhật.

Quy trình phát triển hàng ngày

Bạn cần ba terminal:

Terminal 1 — Daemon dev:

shell
$ coast-dev daemon start        # start in background
# or: coastd-dev --foreground # start in foreground for log output

Terminal 2 — Rust rebuild on save:

shell
$ make watch

Terminal 3 — Web UI với hot reload:

shell
$ cd coast-guard
$ npm install
$ npm run dev:coast-dev

Testing

Unit tests

shell
$ make test

Integration tests

shell
$ make run-dind-integration TEST=test_assign
$ make run-dind-integration TEST=all

Cấu trúc Dự Án

coast/
  coast-cli/          # Thin CLI client
  coast-daemon/       # coastd process nền
  coast-core/         # Shared types, Coastfile parsing
  coast-secrets/      # Secret extraction, encryption
  coast-docker/       # Docker API wrapper
  coast-git/          # Git worktree management
  coast-guard/        # Web UI (React + Vite)

Read Original (EN) Quay lại Newsletter