Docker 실행 및 생성
docker run
와 docker create
명령 의 차이점은 무엇입니까 ?
나는 일반적으로 사용 run
하지만 때로는 문서에서 create
.
도커의 --help
말
create Create a new container
run Run a command in a new container
run
새 컨테이너에 명령을 전달해야 할 때 사용 된다는 의미 입니까? 그렇다면 목표는 무엇입니까 create
?
Docker 문서에서
docker create 명령은 지정된 이미지 위에 쓰기 가능한 컨테이너 계층을 만들고 지정된 명령 실행을 위해 준비합니다. 그런 다음 컨테이너 ID가 STDOUT에 인쇄됩니다. 이다 고정 표시기 실행 유사 -d 컨테이너가 시작되지 않습니다 제외 . 그런 다음 docker start 명령을 사용하여 언제든지 컨테이너를 시작할 수 있습니다.
이는 경우에 유용합니다 당신이 할 컨테이너 설정 구성을 미리 시간을 당신이 그것을 필요로 할 때 시작할 준비가되도록. 새 컨테이너의 초기 상태가 생성됩니다.
기술적으로 docker run
= docker create
+ docker start
.
docker create
명령 은 이미지에서 쓰기 가능한 컨테이너를 만들고 실행을 위해 준비합니다 .
docker run
명령 은 컨테이너 (와 동일 docker create
)를 만들고 시작합니다 .
나는 도커를 처음 접했고 그냥 가지고 놀았다.
내 생각에 docker run은 기본적으로 다음을 수행합니다. (순서대로 ..) docker create , docker start , docker attach , 'run' 명령 을 수행 한 후 즉시 활성 셸에 연결되기 때문 입니다.
다른 답변에는 이것을 다루었지만 실제로는 명확하기 때문에 동등한 셸 명령 줄을 보여줄 것이라고 생각했습니다.
$ docker run myimage
와 같다
$ docker start -a $(docker create myimage)
여기서, docker create
지정된 화상으로부터 용기를 만드는 데 사용하고, 생성 출력한다 컨테이너 ID를 하고 docker start
그 ID를 사용하여 컨테이너를 시작하는 데 사용된다. 이 -a
옵션은 컨테이너가의 기본 동작 인 포 그라운드에서 실행되도록 터미널이 연결되도록합니다 docker run
.
생성되었지만 시작되지 않은 컨테이너는 Created
상태가됩니다. 이것은로 볼 수 있습니다 docker container ls -a
.
Docker 실행 은 기본적으로 컨테이너에서 명령을 실행하기위한 것입니다.
docker run -it <Container Name> /bin/bash
위는 bash 터미널을 만들기위한 것입니다. 그리고 컨테이너에서 bash 명령을 사용하도록합니다.
Docker create 는 Docker 이미지에서 컨테이너를 만드는 것입니다.
docker create -d /var/lib:/var/lib --name docker-ubuntu ubuntu
위는 이미지 "ubuntu"에서 "docker-ubuntu"라는 이름의 컨테이너를 Docker로 만드는 것입니다.
참고 URL : https://stackoverflow.com/questions/37744961/docker-run-vs-create
'program story' 카테고리의 다른 글
'vagrant up'에 매개 변수를 전달하고 Vagrantfile 범위에 포함하는 방법은 무엇입니까? (0) | 2020.10.09 |
---|---|
Java 8 Lambda 표현식-중첩 클래스의 여러 메서드는 어떻습니까? (0) | 2020.10.09 |
신속한 3.0 데이터를 문자열로? (0) | 2020.10.09 |
교차 엔트로피 란 무엇입니까? (0) | 2020.10.09 |
Python의 SQL 문에서 변수를 사용하는 방법은 무엇입니까? (0) | 2020.10.09 |