이재홍의 언제나 최신 Docker - Unit 13.1 attach

저작권 안내
  • 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
  • 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.

Docker 명령어 및 옵션 목록

이재홍 http://www.pyrasis.com

attach

다음은 실행되고 있는 컨테이너에 표준 입력(stdin)과 표준 출력(stdout)을 연결하는 attach 명령입니다.

docker attach <옵션> <컨테이너 이름, ID>
  • --no-stdin=false: 표준 입력을 연결하지 않습니다.
  • --sig-proxy=true: 모든 시그널을 프로세스에 전달합니다(TTY 모드가 아닐 때도). 단 SIGCHLD, SIGKILL, SIGSTOP 시그널은 전달하지 않습니다. 자주 사용하는 시그널은 다음과 같습니다.
    • SIGINT: Interrupt 시그널, Ctrl+C를 입력하였을 때 발생합니다.
    • SIGQUIT: Quit 시그널, Ctrl+\를 입력하였을 때 발생합니다.
    • EOF: Ctrl+D를 입력하였을 때 발생하며 attach된 상태를 종료합니다.

SIGCHLD, SIGKILL, SIGSTOP

  • SIGCHLD: 자식 프로세스가 정지되거나 종료되었을 때 부모 프로세스에 전달되는 시그널입니다.
  • SIGKILL: 프로세스를 강제로 종료하는 시그널입니다.
  • SIGSTOP: 프로세스를 정지하는 시그널입니다.

보통 컨테이너에 Bash와 같은 셸을 실행하고 docker attach 명령으로 연결하여 각종 명령을 실행합니다.

$ sudo docker run -i -t -d --name hello ubuntu:latest /bin/bash
$ sudo docker attach hello
root@de6e3b886fb1:/#

프로세스의 출력 내용을 확인할 때도 docker attach 명령을 사용합니다.

$ sudo docker run -d --name hello ubuntu:latest \
    /bin/bash -c "while true; do echo Hello World; sleep 1; done"
$ sudo docker attach hello
Hello World
Hello World
Hello World

저작권 안내

이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.
  • 블로그, 게시판 등에 퍼가는 것을 금지합니다.
  • 비공개 포스트에 퍼가는 것을 금지합니다.
  • 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
  • 링크 및 SNS 공유는 허용합니다.

Published

2022-10-03