본문 바로가기

DevOps/Docker

(10)
Docker file 구성요소와 멀티스테이징 FROM 베이스 이미지 지정 FROM [이미지명] | [이미지명]:[태그명] | [이미지명][다이제스트] docker image ls --digests RUN 명령 실행 CMD 컨테이너 실행 명령 LABEL 라벨 설정 EXPOSE 포트 익스포트 ENV 환경변수 ADD 파일/디렉토리 추가 COPY 파일 복사 ENTRYPOINT 컨테이너 실행 명령 VOLUME 볼륨 마운트 USER 사용자 지정 WORKDIR 작업 디렉토리 ARG Dockerfile 안의 변수 ONBUILD 빌드 완료 후 실행되는 명령 STOPSIGNAL 시스템 콜 시그널 설정 HEALTHCHECK 컨테이너의 헬스 체크 SHELL 기본 쉘 설정 RUN FROM에서 베이스 이미지에 환경 구축을 위한 명령을 실행하는 명령어, 이미지가 만들어질 때..
도커 레지스트리 사용하기 ----- 도커 컨테이너 이미지 생성 방법 1. 명령어를 이용한 이미지 생성 $ docker container commit CONTAINER NEW_IMAGE_REPO:TAG 2. Dockerfile을 이용한 이미지 생성 멀티스테이지 이미지 빌드 사설 레지스트리 구축 $ docker search registry NAME DESCRIPTION STARS OFFICIAL AUTOMATED registry The Docker Registry 2.0 implementation for s… 0 [OK] registry 컨테이너 이미지 다운로드 $ docker image pull registry:2 registry:2 컨테이너 실행 $ docker container run -d -p 5000:5000 --name ..
도커 실행 중인 컨테이너 관리와 작업 컨테이너 저장 가동중인 컨테이너 연결 # 가동 컨테이너에 연결 docker container attach CONTAINER # 가동 컨테이너에 프로세스 실행 docker container exec [option] CONTAINER -d(백그라운드), -i(표준입력), -t(tty단말디바이스), -u(사용자명) # 가동 중인 컨테이너에 실핼중인 프로세스 확인 docker container top CONTAINER # 가동 컨테이너의 포트 전송 확인 docker container port CONTAINER # 가동 컨테이너 이름 변경 docker container rename old new 컨테이너의 파일 이동 및 변경 # 도커 호스트에서 컨테이너로 파일 복사 $ docker container cp DOCKER_HOST_..
도커 네트워크 도커 네트워크 도커 네트워크 종류 Bridge Network - Docker 내부에 네트워크를 구성하고 호스트의 인터페이스를 사용해서 외부 네트워크와 연결될 수 있는 네트워크 - Docker Host의 기본 브리지 네트워크 인터페이스 : docker0 - Docker Container의 기본 브리지 인터페이스 : vethXXXX Host Network - Docker Host의 네트워크를 직접 공유하는 네트워크 - Docker Host의 주소를 사용하여 Docker 컨테이너에서 사용중인 포트로 접근할 수 있음 Null Network - 네트워크가 필요하지 않은 도커 컨테이너에서 사용하는 네트워크 유형으로 외부와 단절되는 네트워크 유형 MAC VLAN Network - 호스트 네트워크 인터페이스와 같은 네..
도커 컨테이너 기본 명령어 다루기 # 도커 버전 docker version # 도커 이미지 확인 및 허브 이미지 확인 docker images docker search {image_name} # 이미지 다운로드 $ docker image pull IMG_REPO:TAG $ docker pull IMG_REPO:T # 도커 이미지 삭제 $ docker image rm IMAGE $ docker image prune # 전체 $ docker image prune -a # 사용중이지 않은 이미지 # 도커 정보 확인 server 정보가 중요하다. docker info #CentOS 7 컨테이너 실행(제어 터미널 사용) $ docker container run -it --name CONTAINER IMG_REPOSITORY:TAG $ docker..
도커 기술과 리눅스에 설치하기 도커를 알기 위한 기본 CS 가상화(Virtualization) 서버 가상화 서버를 가상 머신의 형태로 만들어서 사용하는 기술 CPU, RAM, 저장장치 등을 논리적으로 나눠 사용하는 기술 네트워크 가상화 물리적으로 존재하는 네트워크를 논리적으로 구성하는 가상화 기 스토리지 가상화 여러개의 물리적인 디스크를 하나의 논리적인 디스크 처럼 사용하는 기술 최근에는 SDS(Software Defined Storage) 기술이 주목을 받고 있음 - Ceph, GlusterFS 컨테이너 가상화 호스트 OS에서 논리적인 구역을 만들어 서로 독립적인 애플리케이션을 실행하는 기술 커널의 기능을 사용하며 서버가상화보다 리소스를 효율적으로 사용할 수 있음 Linux LXC FreeBSD Jail 프로세스 구획 네트워크 구획..
도커 이미지 관리 이미지란? 프로세스가 실행되는 파일들의 집합 프로세스는 파일들을 변경할 수 있다 이 환경을 저장해서 새로운 이미지를 만든다. 도커는 레이어드 파일 시스템 기반 상태변화 base가 되는 기본 이미지를 변경이 안되고, 새로운 프로그램을 설치 후 커밋하면 파일을 추가한 상태의 이미지가 된다. 이미지를 불러와서, 상태변화의 예시 docker run -it --name git ubuntu:latest bash # # 해당 컨테이너에 git 설치 후 docker commit git ubuntu:git # 이미지 목록을 보면, ubuntu이미지에 git이라는 tag가 달린 이미지가 추가로 생성되어 있다. 도커이미지만들기 커밋말고도 직접 이미지를 만들수 있다. [이미지명 컨벤션] docker build -t 공간/이미..
도커 명령어와 컴포즈 About Docker Command and Compose. ps 명령어 docker ps # 현재 실행 중인 컨테이너 docker ps -a # 중지된 컨테이너까지 전부 stop 명령어 docker stop [OPTIONS] CONTAINER [CONTAINER...] # 실행중 컨테이너 중지, 복수 개 가능 rm 명령어 docker rm [OPTIONS] CONTAINER [CONTAINER..] # 종료된 컨테이너까지 제거 logs 명령어 docker logs [OPTIONS] CONTAINER # 컨테이너 정상 동작하는지 확인을 위해 로그를 확인 # -f 로그생성 대기 # images 명령어 docker images [OPTIONS] [REPOSITORY[:TAG]] # 도커가 다운로드한 이미지 ..