본문으로 건너뛰기
Toolars
둘러보기

Docker Run에서 Compose 변환

Docker Run to Compose

Docker에 연결하지 않고 지원되는 docker run 구문을 Compose YAML로 변환합니다.

작업 경로 / 입력에서 결과까지

docker run 명령 붙여넣기

버그 신고

기기 내 처리

처리 안내

도구 입력은 이 기기에서 처리됩니다.

실행에 필요한 리소스를 다운로드할 수 있습니다. 계정 서비스는 별도로 운영됩니다.

오프라인 사용을 준비하는 중…

개인정보 안내

작업 경로 / 입력에서 결과까지

docker run 명령을 Compose로 변환하는 방법

  1. 01

    docker run 명령 붙여넣기

    Linux 컨테이너를 위한 POSIX 셸 리터럴 명령용입니다. 입력은 UTF-8 기준 최대 64 KiB이며 raw 환경 파일은 Compose 2.30+가 필요합니다. 출력은 설정 초안입니다. 셸, Docker 데몬 또는 이미지를 실행하거나 검사하지 않습니다. 단일 docker run 리터럴 명령을 사용하세요. 호스트 변수는 명시적인 값으로 바꾸고, 문자 $는 작은따옴표로 감싸거나 이스케이프하세요. 셸 확장, 파이프, 리디렉션, 명령 치환 및 이스케이프하지 않은 줄바꿈은 지원하지 않습니다. 역슬래시 줄 연결은 지원합니다.

  2. 02

    Compose 서비스로 변환

    이름, 포트, 명시적 환경 값, raw 환경 파일, 마운트, 재시작, 네트워크, 작업 디렉터리, 사용자, 진입점 및 레이블을 변환합니다. -i/-t(-it 포함)는 stdin_open/tty가 됩니다. 짧은 옵션은 붙인 값을, 긴 옵션은 =value를 지원합니다. 알 수 없는 옵션은 변환을 중단합니다.

  3. 03

    생성된 YAML 확인

    이미지 뒤의 인수는 순서와 빈 문자열을 보존해 command 목록에 들어갑니다. 값이 있는 entrypoint는 단일 인수로 유지하며 빈 값은 진입점을 지웁니다. 문자 달러 기호는 Compose 재치환을 막기 위해 두 번 씁니다. 기본 네트워크는 bridge로 명시합니다. 바인드는 -v(호스트 디렉터리 생성 가능)와 --mount(기존 경로 필요)를 구분합니다.

  4. 04

    미지원 목록 검토

    지원하지 않는 옵션이 있어 부분 YAML을 생성하지 않았습니다. 가이드에 나열된 옵션을 사용하고 컨테이너 명령 인수는 이미지 이름 뒤에 두세요. --rm은 YAML에 포함되지 않습니다. 적절한 Compose 실행 및 삭제 방식을 직접 선택하세요. -d/--detach는 시작 옵션입니다. 필요할 때 docker compose up -d를 사용하세요.

  5. 05

    YAML 복사 또는 다운로드

    env_file은 raw 형식(Compose 2.30+)으로 달러 기호와 따옴표를 보존합니다. 상대 경로는 compose.yaml 위치를 기준으로 합니다. 파일 내용과 미설정 변수는 검사하지 않으므로 실제 환경을 확인하세요. 이름 있는 볼륨과 사용자 지정 네트워크는 원래 이름으로 외부 참조합니다. 시작 전에 존재해야 하며 여기서는 리소스를 생성하거나 검사하지 않습니다.

도구 요약

처리
브라우저에서 완결
입력의 기기 외 전송
없음
저장
아무것도 저장하지 않음
가격
무료

입력 값은 브라우저에 머물러요.

Docker Run에서 Compose 변환 도구는 검증된 로컬 실행 경로를 사용하고, 숨겨진 입력 또는 출력 기록을 만들지 않습니다.

로컬 실행

현재 브라우저 탭 안에서 실행됩니다.

숨겨진 처리 없음

사용 중인 도구 데이터는 Toolars 문서 기록으로 남지 않습니다.

계정 불필요

프로필을 만들지 않고도 핵심 워크플로를 사용할 수 있습니다. 즐겨찾기는 로그인 후 계정에 동기화됩니다.

즉시 초기화

탭을 정리하면 사용 중이던 작업 데이터도 사라져요.

Docker Run에서 Compose 변환 도구가 실제로 하는 일

동료의 배포 메모는 길고 긴 docker run 한 줄 — docker run -d --name web -p 8080:80 -e NODE_ENV=production -v /srv/data:/data:ro --restart unless-stopped nginx:1.27-alpine — 이고 프로젝트 표준은 Compose입니다. 포럼 답변에는 필요한 옵션이 정확히 있지만 YAML은 아닙니다. 레거시 스크립트의 컨테이너 옵션은 버전 관리로 옮기기 전에 감사가 필요합니다. 그 줄을 붙여 넣으면 포트 매핑, 환경, 읽기 전용 볼륨, 재시작 정책이 검토용으로 정리된 web 서비스가 나오고, -d는 버려지지 않고 수명 주기 전용으로 표시됩니다. 이 변환기는 데몬이나 레지스트리, Docker 자체에 연결하지 않고 브라우저에서 명령을 검토 가능한 하나의 서비스로 바꿉니다.

자주 묻는 질문

docker run의 어떤 옵션이 변환되나요?
알 수 없는 옵션은 변환을 중단합니다. 지원하지 않거나 충돌하는 마운트입니다. -v는 source:/target[:ro|rw] 또는 /target을 지원합니다. --mount는 type=bind|volume, source/src, target/destination/dst, readonly/ro=true|false 및 볼륨용 volume-nocopy=true|false를 지원합니다. 다른 필드와 중복 대상은 거부합니다.
--rm과 -d가 미지원인 이유는 무엇인가요?
--rm은 YAML에 포함되지 않습니다. -d/--detach는 시작 옵션입니다.
Compose 서비스 이름은 어떻게 정해지나요?
서비스 이름은 --name이 있으면 거기서, 없으면 레지스트리 경로와 태그를 뗀 이미지 참조에서 옵니다. registry.example.com/team/nginx:1.27은 nginx가 됩니다. 소문자, 숫자, 밑줄, 하이픈 이외의 문자는 하이픈으로 합쳐지고 결과가 비면 app으로 돌아갑니다. container_name은 --name을 명시했을 때만 출력됩니다.
이미지 뒤의 인수는 어떻게 되나요?
기본 네트워크는 bridge로 명시합니다.
생성된 YAML을 프로덕션에 바로 쓸 수 있나요?
출력은 설정 초안입니다.
명령이 어딘가에 업로드되나요?
아니요. 파싱과 변환은 현재 브라우저 탭 안에서만 이루어지며 명령이 전송되거나 보관되지 않고 계정도 필요 없습니다.

막다른 길이 아니라 이어지는 작업입니다.

전체 인덱스로 돌아가지 않고 다른 집중 워크스페이스로 바로 이동합니다.

URL 작업 도구

URL Workbench

서명 링크를 보존하며 URL 목록을 정리합니다. 행별 변경 이유, 주소 구성 비교와 Sitemap 내보내기를 제공합니다.

편집

JSON 검색 및 펼치기

JSON Explorer

JSONPath 검색과 필드 추출, JSON Pointer 펼치기와 복원을 지원하며 큰 수의 정밀도를 보존합니다.

검사

JSON Schema 검증

JSON Schema Validator

Draft 7 또는 2020-12를 로컬 검증하고 오류 경로를 표시합니다. 여러 샘플로 스키마를 추론합니다.

검사

HTML 게시 준비

HTML Publishing

붙여 넣은 HTML을 정리하고 목록, 링크, 표의 의미를 유지합니다. 변경 내용을 안전하게 미리 봅니다.

게시