본문 바로가기

Development/Docker

(11)
[Docker]11. 도커 이미지 Google Container Registry로 관리하기 1. Container Registry API 활성화 2. Cloud SDK 설치 및 초기화 (이미 설치한 경우 건너 뜨기) - https://cloud.google.com/sdk/docs/ Google Cloud SDK 문서 | Google Cloud Google의 Cloud Platform에서 리소스를 만들고 관리할 수 있는 도구와 라이브러리를 제공합니다. cloud.google.com 3. GCR 인증하기 (인증 된 경우 건너띄기) $ gcloud auth configure-docker 4. 생성된 도커이미지 태깅 GCR에서 호스팅하는 비공개 레지스트리에 이미지를 푸시하려면 이미지에 레지스트리 이름으로 태그를 지정해야 합니다. 양식은 [hostname]/[project-id]/[image]:[tag..
[Docker] 9. 운영과 관리를 위한 명령 1. 실행 중이 아닌 모든 컨테이너 삭제 $ sudo docker container prune 2. 태그가 붙지 않은 모든 이미지 삭제 $ sudo docker image prune 3. 컨테이너, 볼륨, 네트워크 등 모든 도커 리소스 일괄 삭제 $ sudo docker system prune 4. 사용 현황 확인하기 $ sudo docker container stats
[Docker]8. 컨테이너 run 명령에서 자주 사용되는 옵션 -i 옵션 : 컨테이너 표준 입력과의 연결, 컨테이너 쪽 쉘에 들어가서 명령 실행, 실제 사용시 -t 옵션과 함께 사용 -t 옵션 : 유사 터미널 기능 활성화 옵션 --rm 옵션 : 컨테이너 종료할 때 컨테이너 파기하도록 하는 옵션 -v 옵션 : 호스트와 컨테이너 간에 디렉터리나 파일을 공유하기 위해 사용하는 옵션
[Docker]7. 컨테이너 다루기 1. 도커 컨테이너란? 파일시스템과 애플리케이션이 함께 담겨 있는 박스 2. 도커 컨테이너 생애 주기 실행중 > 정지 > 파기 3. 컨테이너 생성 및 실행 $docker run --name [컨테이너이름] [이미지명] docker container run [options] 이미지명/ID[:태그] [명령] [명령인자...] $ docker container run -d -p 9000:8080 example/echo:latest 4. 도커 컨테이너 실행시 명령인자 전달 $ sudo docker container run -it alpine:3.7 uname -a 5. 컨테이너에 이름 붙이기 $ sudo docker container -t -d --name sangjo-echo example/echo:lates..
[Docker]6. 도커허브 이미지 관리 하기 1. 도커 이미지 검색 (Github와 유사하게 컨테이너 이미지를 보관하는 저장소 검색) > docker search [options] 검색_키워드 $ docker search --limit 5 mysql * 리포지토리에 공개된 tag 에 대한 검색은 안되면 별도로 API를 이용해야 검색 가능함. 2. 도커레지스트리에서 이미지 내려 받기 > docker image pull [options] 리포지토리명:[태그명] 3. 도커 이미지 외부에 공개하기 3.1 docker hub 로그인 하기 $ sudo docker login [-u xxx] [-p xxxxxx] 3.2 도커 이미지 도커 허브에 올리기 - docker image push [options] 도커허브유저네임/리포지토리명[:태그] $ sudo doc..
[Docker]5. 도커 이미지 빌드시 자주 사용하는 옵션 docker image build -t 이미지명:[태그명] Dockerfile의 경로 1. -t 옵션은 이미지명과 태그명을 붙이는 것 실제 사용에서 거의 필수 2. 도커파일 경로에서 "."은 현재 작업 디렉터리 3. -f 옵션은 기본인 Dockerfile 대신에 다른 파일 명을 사용할 경우 사용 >$ docker image build -f Dockerfile-test -t exmaple/echo:latest 4. --pull 옵션은 매번 베이스 이미지를 강제로 새로 받아옴 >$ docker image build --pull=true -t exmaple/echo:latest
[Docker]4. 도커 인스트럭션 설명 FROM : 도커의 베이스 이미지 -> 도커허브 레지스트리에서 가져옴 RUN: 컨테이너 안에서 실행할 명령 정의, 이미지 빌스시 실행 COPY: 도커가 동작 중인 호스트 머신의 파일이나 디렉터리를 도커 컨테이너 안으로 복사 ADD: ??? CMD: 도커 컨테이너 실행 시, 컨테이너 안에서 실행할 프로세스를 지정, 컨테이너 시작시 한번 실행 참고 : https://docs.docker.com/engine/reference/builder/#known-issues-run
[Docker]3. 간단한 애플리케이션과 도커 이미지 만들기 1. 컨테이너에서 실행할 코드 작성 2. 코드 파일 Dockerfile로 만들기 3. Dockerfile로 도커 이미지 빌드하기 $ sudo docker image build -t example/echo:latest . 4. 도커 이미지 조회 $sudo docker image ls 5. 도커 컨테이너 실행 5.1 포어그라운드 실행 $ sudo docker container run -p example/echo:latest 5.2 백그라운드 실행 $ sudo docker container run -d -p example/echo:latest 6. 도커 컨테이너 정지 $ sudo docker container stop $(sudo docker container ls --filter "ancestor=examp..