Trình tạo Docker Compose — Tạo file compose.yaml

Chọn các dịch vụ bạn cần — ứng dụng, cơ sở dữ liệu, cache, giao diện quản trị, công cụ bắt mail — và nhận file compose.yaml gọn gàng với image đã ghim phiên bản, named volume, healthcheck và điều kiện depends_on, cùng file .env có sẵn mật khẩu được tạo ngẫu nhiên.

Cập nhật

1. Dịch vụ

2. Cài đặt

compose.yaml
.env

Khởi động với docker compose up -d, xem log với docker compose logs -f. Đừng đưa .env lên Git — Trình tạo .gitignore sẽ tự thêm nó vào cho bạn.

Dữ liệu của bạn không bao giờ rời khỏi máy tính. Mọi xử lý diễn ra 100% cục bộ trong trình duyệt của bạn.

Công cụ này có hữu ích không?0.0 0 lượt đánh giá
Tạo manifest Kubernetes từ biểu mẫuDeployment, Service, Ingress có TLS, ConfigMap, Secret, tự động co giãn, probe, giới hạn tài nguyên và cấu hình pod an toàn.Tạo Kubernetes YAML →

Cách dùng Trình tạo Docker Compose

  1. Chọn các dịch vụ dự án cần, ví dụ ứng dụng Node.js + Postgres + Redis + Adminer.
  2. Điều chỉnh cổng host, tên database và user. Mật khẩu được tạo ngẫu nhiên và lưu trong file .env.
  3. Giữ tùy chọn Healthchecks bật để ứng dụng chỉ khởi động sau khi database sẵn sàng nhận kết nối.
  4. Tải compose.yaml và .env vào thư mục dự án rồi chạy docker compose up -d.

File được tạo ra có những gì?

Thành phầnLý do có mặt
Tag image đã ghim (postgres:17-alpine)Build có thể tái lập — latest có thể nhảy sang major version mới và làm hỏng database của bạn.
Named volumeDữ liệu được giữ lại sau khi chạy docker compose down và khi build lại container.
healthcheck + depends_on: condition: service_healthyỨng dụng đợi đến khi database thực sự sẵn sàng, không chỉ là đã khởi động.
Tham chiếu ${VAR}Thông tin nhạy cảm nằm trong .env, không nằm trong file YAML bạn commit.
Bind cổng 127.0.0.1:Database truy cập được từ máy bạn nhưng không mở cho cả mạng.

Không còn version: nữa

Khóa version: "3.8" ở cấp cao nhất đã lỗi thời trong Compose Specification mà Docker Compose v2 sử dụng — nó chỉ gây ra cảnh báo. File hiện đại bắt đầu trực tiếp bằng services: và thường được đặt tên là compose.yaml (tên docker-compose.yml cũ vẫn hoạt động).

Tên dịch vụ chính là hostname

Trong mạng Compose, các container gọi nhau bằng tên dịch vụ: ứng dụng kết nối tới postgres:5432, không phải localhost:5432. Trình tạo sẽ tự tạo DATABASE_URL và REDIS_URL cho ứng dụng theo cách này.

Công cụ liên quan

Chuyển lệnh docker run có sẵn thành một dịch vụ với Docker Run sang Compose, đặt Nginx phía trước ứng dụng bằng Trình tạo cấu hình Nginx, kiểm tra file .env với Trình kiểm tra file .env và tạo pipeline CI với Trình tạo GitHub Actions. Kiểm tra cú pháp YAML bằng công cụ chuyển YAML sang JSON.

Cũng được tìm dưới tên: tạo file compose.yaml, trình tạo docker-compose.yml, docker compose postgres, docker compose mysql, docker compose wordpress, docker compose redis, mẫu docker compose.

Các công cụ dùng kèm tốt với Trình tạo Docker Compose

  • Tạo Kubernetes YAML — Nhập tên ứng dụng, image và cổng, bạn sẽ có ngay Kubernetes YAML sẵn sàng cho production: một Deployment với probe, giới hạn tài nguyên và security context được gia cố, cùng Service, Ingress có TLS, ConfigMap, Secret và HorizontalPodAutoscaler mà bạn chọn — tất cả trong một file, sẵn sàng cho kubectl apply.
  • Kiểm tra YAML — Dán file Docker Compose, manifest Kubernetes, workflow GitHub Actions hoặc bất kỳ YAML nào để xác định chính xác lỗi, phát hiện các lỗi thường gặp và nhận bản đã định dạng gọn gàng.
  • Trình tạo systemd Service — Chạy ứng dụng của bạn như một dịch vụ Linux đúng chuẩn, tự khởi động cùng hệ thống và tự restart khi bị crash.
  • Tạo GitLab CI — Chọn stack của bạn và nhận ngay file .gitlab-ci.yml chạy được: cài đặt với caching, job lint và test, build kèm artifacts, Docker image đẩy lên GitLab registry, hoặc deploy GitLab Pages — với rules giúp pipeline chạy cho merge request và nhánh mặc định mà không bị trùng lặp.

Câu hỏi thường gặp

Nên đặt tên file là compose.yaml hay docker-compose.yml?
compose.yaml là tên được ưu tiên trong Compose Specification. Docker Compose v2 vẫn nhận diện docker-compose.yml, nên cả hai đều dùng được — chỉ đừng giữ cả hai trong cùng một thư mục.
Vì sao ứng dụng của tôi không kết nối được database khi dùng localhost?
Trong Compose, mỗi dịch vụ là một container riêng. Hãy dùng tên dịch vụ làm host (postgres, mysql, redis) thay vì localhost. Từ chính máy tính của bạn, bạn dùng localhost cùng cổng đã publish.
Làm sao để đợi database sẵn sàng?
Thêm healthcheck cho database và dùng depends_on với condition: service_healthy trong dịch vụ ứng dụng. Trình tạo làm cả hai việc này khi tùy chọn “Healthchecks” được bật.
Mật khẩu được tạo ra có an toàn cho production không?
Đó là chuỗi ngẫu nhiên 20 ký tự được tạo trực tiếp trên trình duyệt của bạn, phù hợp cho môi trường phát triển. Với production, hãy dùng trình quản lý bí mật của nền tảng hoặc Docker secrets, và tuyệt đối không commit file .env.
Tôi có thể cài Trình tạo Docker Compose như một ứng dụng web và dùng khi không có mạng không?
Có. Trình tạo Docker Compose là một ứng dụng web (PWA) có thể cài đặt — cài trực tiếp từ trình duyệt, không cần tải từ cửa hàng ứng dụng. Trên Chrome hoặc Edge (Windows, macOS, Linux, ChromeOS) hoặc Android, bấm Cài đặt ứng dụng ở đầu trang này; trên iPhone và iPad, dùng Chia sẻ → Thêm vào Màn hình chính; trên Mac, dùng File → Add to Dock trong Safari 17 trở lên. Sau đó ứng dụng mở trong cửa sổ riêng với biểu tượng riêng, và vì chạy hoàn toàn trên trình duyệt nên vẫn hoạt động khi không có mạng. Firefox trên máy tính không thể cài ứng dụng web. Cách cài đặt hoạt động thế nào.

Công cụ liên quan