Docker run
클라이언트 환경에서 Docker run 수행시, Host의 Docker daemon과 통신한다.
UNIX 소켓 또는, 네트워크로 연결되며 REST API를 사용해 리퀘스트를 보낸다.
Run 프로세스
- docker run <option> $Image:tag <command>
1) Docker_Host 내에서 해당 이미지:태그를 찾는다
2) 없으면 레지스트리에서 이미지:태그를 다운받아온다
3) 이미지를 사용하여 컨테이너 실행
4) 컨테이너에서 명령 수행
Run 옵션
주로 사용하는 옵션들을 정리해보았다.
-d : 컨테이너를 백그라운드로 수행
-e : 컨테이너 내의 환경변수 지정
--env-file : 환경변수 파일을 지정하여 컨테이너 수행
-i : 표준입력(stdin)을 컨테이너와 연결하여, 명령어를 작성할 수 있게한다.
주로 -t 옵션과 같이써서, bash 명령어 수행가능하게 한다.
--name: 컨테이너에 이름을 지정하여, 관리가 쉽게한다.
-p : 호스트로 접근하는 특정 포트를, 컨테이너 포트와 매핑시켜준다 ( 프록시, 포워딩 )
ex) -p 80:8080 / 80포트로 호스트에 접근하는 리퀘스트를, 컨테이너의 8080포트로 연결해준다.
--rm : 컨테이너 수행이 완료되면, 자동으로 삭제한다.
-v : 호스트의 파일시스템을 컨테이너에 마운트한다.
Docker ps
현재 수행중인 컨테이너 목록. -a 옵션을 통해 종료된 컨테이너까지 확인할 수 있다.
Docker Images
현재 Host PC에 저장된 이미지 목록 확인
Docker Stop/Start $Contianer_ID
컨테이너 종료 및 종료된 컨테이너 수행
Docker rm $Container_ID
Host PC 내에서 컨테이너 삭제
Docker rmi $Container_ID
Host PC 내에서 이미지 삭제
Docker search $Image_name
Docker Hub내에서 해당 이미지 검색
Docker pull $Image:$tag
해당 이미지 다운로드. Run 명령어에는 pull 및 수행 명령단계가 포함되어있다.
※ docker pull 이슈 발생 Pull 리퀘스트 횟수 제한에 걸림 - 도커의 경우, 구독 유저가 아니면 리퀘스트 제한이 있는데 ( 익명 100회 / 로그인 200회 . 6시간 기준 ) 프록시 IP를 쓰다보니, 다른 사용자들로 인해 리퀘스트 제한에 걸렸다. - login 하여, 계정을 통한 리퀘스트로 문제 해결 |
'IT > 도커도커' 카테고리의 다른 글
(5) 도커 Hello World - 웹페이지 (0) | 2021.07.22 |
---|---|
(4) 도커 Hello World (1) | 2021.07.20 |
(2) 컨테이너 및 도커 (0) | 2021.07.14 |
(1) Ubuntu에 도커 설치하기 (0) | 2021.06.30 |
(0) Oracle VM 을 통한 Ubuntu 서버 설치 (1) | 2021.06.29 |