Bỏ qua tới nội dung
Toolars
Khám phá

Docker Run sang Compose

Docker Run to Compose

Dịch lệnh docker run POSIX thành service Compose YAML: cổng, môi trường, mount, restart, network. Cờ không hỗ trợ dừng rõ ràng; không liên hệ Docker.

Xử lý cục bộ

Chi tiết xử lý

Dữ liệu nhập của công cụ được xử lý trên thiết bị của bạn.

Công cụ có thể tải tài nguyên để hoạt động. Dịch vụ tài khoản hoạt động riêng.

Đang chuẩn bị dùng ngoại tuyến…

Thông tin quyền riêng tư
Báo lỗi

Lộ trình tác vụ / từ đầu vào đến kết quả

Cách chuyển một lệnh docker run sang Compose

  1. 01

    Dán lệnh docker run

    Dành cho các lệnh shell POSIX nguyên văn nhắm tới container Linux. Tối đa 64 KiB UTF-8. Tệp env thô đòi hỏi Compose 2.30+. Đây là một bản nháp cấu hình; không có shell, Docker daemon hay image nào được thực thi hay kiểm tra. Dùng một lệnh docker run nguyên văn duy nhất. Thay các biến host bằng giá trị tường minh; đặt $ nguyên văn trong ngoặc đơn hoặc escape nó. Mở rộng shell, pipe, chuyển hướng, thay thế lệnh và ngắt dòng không escape không được hỗ trợ. Nối dòng bằng dấu gạch chéo ngược được hỗ trợ.

  2. 02

    Chuyển thành một service Compose

    Chuyển đổi name, ports, giá trị môi trường tường minh, tệp env thô, mount, restart, network, workdir, user, entrypoint và label. -i/-t (kể cả -it) trở thành stdin_open/tty. Tùy chọn ngắn chấp nhận giá trị viết liền và tùy chọn dài chấp nhận =value. Tùy chọn không rõ sẽ dừng việc chuyển đổi.

  3. 03

    Kiểm tra YAML được tạo

    Các đối số sau image giữ nguyên thứ tự và chuỗi rỗng trong danh sách lệnh. Một entrypoint không rỗng vẫn là một đối số; một entrypoint rỗng sẽ xóa nó. Dấu đô la nguyên văn được nhân đôi cho Compose, bảo toàn giá trị của chúng thay vì nội suy môi trường host. Mạng mặc định là bridge một cách tường minh. Bind mount giữ sự khác biệt giữa -v (có thể tạo thư mục host) và --mount (phải tồn tại sẵn).

  4. 04

    Rà soát danh sách không hỗ trợ

    Một tùy chọn không được hỗ trợ. Không có YAML một phần nào được tạo. Hãy dùng các tùy chọn được hỗ trợ liệt kê trong hướng dẫn; chuyển các đối số lệnh container ra sau image. --rm không được biểu diễn trong YAML. Hãy tự chọn vòng đời chạy/gỡ bỏ Compose phù hợp. -d/--detach là tùy chọn khởi chạy: dùng docker compose up -d khi phù hợp.

  5. 05

    Sao chép hoặc tải xuống YAML

    env_file dùng định dạng thô (Compose 2.30+) để bảo toàn dấu đô la và dấu ngoặc. Đường dẫn tương đối quy về cạnh compose.yaml. Nội dung tệp và biến chưa đặt không được kiểm tra; hãy rà soát môi trường thực tế. Named volume và mạng tùy chỉnh là các tham chiếu ngoài với tên gốc của chúng. Chúng phải tồn tại sẵn trước khi khởi chạy; không tài nguyên nào được tạo hay kiểm tra ở đây.

Thông tin công cụ

Xử lý
Trong trình duyệt của bạn
Dữ liệu nhập rời thiết bị này
Không bao giờ
Lưu giữ
Không có gì được lưu
Giá
Miễn phí

Dữ liệu bạn nhập ở lại trong trình duyệt.

Docker Run sang Compose dùng lộ trình thực thi cục bộ đã xác minh và không tạo lịch sử đầu vào hay đầu ra ẩn.

Thực thi cục bộ

Chạy bên trong tab trình duyệt hiện tại.

Không xử lý ẩn

Dữ liệu công cụ đang hoạt động không bao giờ trở thành bản ghi tài liệu của Toolars.

Không cần tài khoản

Dùng quy trình cốt lõi mà không cần tạo hồ sơ. Mục yêu thích đồng bộ vào tài khoản sau khi bạn đăng nhập.

Đặt lại ngay lập tức

Xóa tab và dữ liệu đang làm việc sẽ biến mất.

Docker Run sang Compose thực sự làm gì

Một ghi chú triển khai từ đồng đội là một dòng docker run dài — docker run -d --name web -p 8080:80 -e NODE_ENV=production -v /srv/data:/data:ro --restart unless-stopped nginx:1.27-alpine — và chuẩn của dự án là Compose; một câu trả lời trên diễn đàn chứa đúng các cờ bạn cần nhưng không phải dạng YAML; các tùy chọn container của một script legacy phải được kiểm toán trước khi đi vào version control. Dán dòng đó tạo ra một service web với ánh xạ cổng, môi trường, volume chỉ-đọc và chính sách restart được trình bày để rà soát, trong khi -d được gắn cờ là chỉ-thuộc-vòng-đời thay vì bị bỏ rơi. Docker Run sang Compose biến lệnh thành một service có thể rà soát trong trình duyệt — mà không liên hệ daemon, registry hay chính Docker.

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

Những cờ docker run nào được chuyển đổi?
Chuyển đổi name, ports, giá trị môi trường tường minh, tệp env thô, mount, restart, network, workdir, user, entrypoint và label. -i/-t (kể cả -it) trở thành stdin_open/tty. Tùy chọn ngắn chấp nhận giá trị viết liền và tùy chọn dài chấp nhận =value. Tùy chọn không rõ sẽ dừng việc chuyển đổi. Mount không được hỗ trợ hoặc xung đột. Dùng -v source:/target[:ro|rw] hoặc /target, hoặc --mount với type=bind|volume, source/src, target/destination/dst, readonly/ro=true|false và volume-nocopy=true|false cho volume. Các trường khác và đích trùng lặp bị từ chối.
Vì sao --rm và -d bị liệt vào không hỗ trợ?
--rm không được biểu diễn trong YAML. Hãy tự chọn vòng đời chạy/gỡ bỏ Compose phù hợp. -d/--detach là tùy chọn khởi chạy: dùng docker compose up -d khi phù hợp.
Service Compose được đặt tên thế nào?
Tên service lấy từ --name khi có, nếu không thì lấy từ tham chiếu image sau khi bỏ đường dẫn registry và tag: registry.example.com/team/nginx:1.27 trở thành nginx. Các ký tự ngoài chữ thường, chữ số, gạch dưới và gạch ngang gộp thành gạch ngang, và một kết quả rỗng quay về app. container_name chỉ được sinh ra khi --name được cung cấp tường minh.
Điều gì xảy ra với các đối số sau image?
Các đối số sau image giữ nguyên thứ tự và chuỗi rỗng trong danh sách lệnh. Một entrypoint không rỗng vẫn là một đối số; một entrypoint rỗng sẽ xóa nó. Dấu đô la nguyên văn được nhân đôi cho Compose, bảo toàn giá trị của chúng thay vì nội suy môi trường host. Mạng mặc định là bridge một cách tường minh. Bind mount giữ sự khác biệt giữa -v (có thể tạo thư mục host) và --mount (phải tồn tại sẵn).
YAML được tạo có sẵn sàng cho production không?
Dành cho các lệnh shell POSIX nguyên văn nhắm tới container Linux. Tối đa 64 KiB UTF-8. Tệp env thô đòi hỏi Compose 2.30+. Đây là một bản nháp cấu hình; không có shell, Docker daemon hay image nào được thực thi hay kiểm tra. Named volume và mạng tùy chỉnh là các tham chiếu ngoài với tên gốc của chúng. Chúng phải tồn tại sẵn trước khi khởi chạy; không tài nguyên nào được tạo hay kiểm tra ở đây.
Lệnh của tôi có bị tải lên đâu không?
Không. Việc phân tích và chuyển đổi chạy hoàn toàn bên trong tab trình duyệt hiện tại, lệnh không bao giờ được gửi hay lưu lại, và không cần tài khoản.

Tác vụ liên quan, không phải ngõ cụt.

Chuyển sang một không gian làm việc tập trung khác mà không cần quay lại mục lục đầy đủ.

Không gian URL

URL Workbench

Làm sạch danh sách URL, bảo vệ liên kết có chữ ký và giải thích từng dòng; so sánh thành phần và xuất sitemap.

Chỉnh sửa

Khám phá JSON

JSON Explorer

Truy vấn JSONPath, trích xuất trường và khôi phục bản ghi JSON Pointer, giữ độ chính xác của số lớn.

Kiểm tra

Kiểm tra JSON Schema

JSON Schema Validator

Kiểm tra Draft 7 hoặc 2020-12 cục bộ với đường dẫn lỗi; suy luận lược đồ từ nhiều mẫu.

Kiểm tra

Chuẩn bị HTML xuất bản

HTML Publishing

Làm sạch HTML đã dán, giữ ngữ nghĩa danh sách, liên kết và bảng; xem trước thay đổi an toàn.

Xuất bản