>  기사  >  운영 및 유지보수  >  도커에서 실행되는 것

도커에서 실행되는 것

WBOY
WBOY원래의
2022-07-08 10:25:5812475검색

docker에서 run은 새 컨테이너를 생성하고 명령을 실행하는 데 사용되는 명령입니다. "docker run"을 실행하면 Docker는 프로세스를 시작하고 이 프로세스를 통해 전용 파일 시스템을 이 프로세스에 할당합니다. 루트 프로세스로서 구문은 "docker run [OPTIONS] IMAGE [COMMAND] [ARG...]"입니다.

도커에서 실행되는 것

이 튜토리얼의 운영 환경: linux7.3 시스템, docker 버전 19.03, Dell G3 컴퓨터.

docker에서 실행되는 내용

docker run: 새 컨테이너를 만들고 명령을 실행합니다.

Docker는 실행 중에 관련 프로세스를 상호 격리된 컨테이너(컨테이너)로 캡슐화합니다. docker run이 실행되면 Docker는 프로세스를 시작하고 이 프로세스를 루트 프로세스로 하여 독점 파일 시스템, 독점 네트워크 리소스 및 프로세스 그룹을 이 프로세스에 할당합니다. Docker가 컨테이너를 시작할 때 로드되는 이미지에는 노출자의 네트워크 포트와 Dockerfile에 정의된 기타 리소스가 필요한 기본 시작 프로세스가 정의되어 있을 수 있습니다. 하지만 기본적으로 docker run을 사용하여 이 이미지를 재정의할 수 있습니다. 이것이 run 명령이 다른 docker 명령 매개변수보다 더 많은 매개변수를 갖는 이유입니다.

Syntax

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS 설명:

  • -a stdin: 표준 입력 및 출력 콘텐츠 유형을 지정합니다. 선택적으로 STDIN/STDOUT/STDERR

  • -d: 백그라운드에서 컨테이너를 실행하고 반환합니다. 컨테이너 ID

  • -i: 일반적으로 -t와 함께 사용되는 대화형 모드에서 컨테이너를 실행합니다.

  • -P: 무작위 포트 매핑, 컨테이너의 내부 포트가 무작위로 매핑됩니다. 호스트

  • -p: 포트 매핑을 지정합니다. 형식은 다음과 같습니다. 호스트(호스트) 포트: 컨테이너 포트

  • -t: 일반적으로 -i

  • 와 함께 사용되는 의사 입력 터미널을 컨테이너에 다시 할당합니다.

    --name="nginx-lb": 컨테이너의 이름을 지정합니다.

  • --dns 8.8.8.8: 컨테이너에서 사용하는 DNS 서버를 지정합니다. 기본값은 호스트와 동일합니다.

    --dns-search example.com: 컨테이너 DNS 검색 도메인 이름을 지정합니다. 기본값은 호스트와 일치합니다.
  • -h "mars": 컨테이너의 호스트 이름을 지정합니다.
  • -e 사용자 이름= "ritchie": 환경 변수 설정
  • --env-file=[]: 파일을 환경 변수로 읽어옵니다.
  • --cpuset="0-2" 또는 --cpuset= "0,1,2": 컨테이너를 지정된 CPU에 바인딩하여 실행합니다.
  • -m: 컨테이너 사용량 최대 메모리를 설정합니다.
  • --net="bridge": 네트워크 연결 유형을 지정합니다. 컨테이너, 브리지/호스트/없음/컨테이너 지원: 4가지 유형
  • --link=[]: 다른 컨테이너에 링크 추가
  • --expose=[]: 포트 또는 그룹 열기
  • --volume, -v: 볼륨 바인딩
  • 예는 다음과 같습니다.
docker 이미지 nginx:latest를 사용하여 백그라운드 모드에서 컨테이너를 시작하고 컨테이너 이름을 mynginx로 지정합니다.

docker run --name mynginx -d nginx:latest

nginx:latest 이미지를 사용하여 백그라운드 모드에서 컨테이너를 시작하고 컨테이너의 포트 80을 호스트의 임의 포트에 매핑합니다.

docker run -P -d nginx:latest

nginx:latest 이미지를 사용하여 백그라운드 모드에서 컨테이너를 시작하고, 컨테이너의 포트 80을 호스트의 포트 80에 매핑하고, 호스트의 디렉터리 /data를 컨테이너의 /data에 매핑합니다.

docker run -p 80:80 -v /data:/data -d nginx:latest

컨테이너의 포트 8080을 바인딩하고 로컬 호스트 127.0.0.1의 포트 80에 매핑합니다.

$ docker run -p 127.0.0.1:80:8080/tcp ubuntu bash

추천 학습: "

docker 비디오 튜토리얼

"

위 내용은 도커에서 실행되는 것의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.