modesta.log
로그인
modesta.log
로그인
docker command 정리
jihyelee
·
2023년 12월 19일
팔로우
0
개념정리
0
Docker 소개 (
link
)
도커
란, 응용 프로그램(application)을 컨테이너로 실행하고 관리할 수 있도록 도와주는 오픈 소스 플랫폼
컨테이너
란, 코드와 코드에 필요한 디펜던시(dependency)를 패키지로 묶은 표준 소프트웨어 단위로, 어떠한 컴퓨팅 환경에서도 빠르게 응용 프로그램을 실행할 수 있도록 도와줌
컨테이너 이미지
란, 응용 프로그램을 실행할 때 필요한 모든 것들(코드, 런다임, 시스템 도구, 시스템 라이브러리, 환경 등)을 포함한 소프트웨어 패키지
런타임에 컨테이너가 됨 (도커 엔진에서 실행될 때)
Docker의 기본적인 생명주기
docker image를 container로 만들어 실행, 원하는 동작이 마무리되면 container 종료
docker run 관련 명령어와 python3 filename.py와 같은 명령어를 shell script로 작성해 컨테이너를 띄움
컨테이너에 쓰여진 데이터는 기본적으로 컨테이너가 삭제될 때 함께 사라지게 됨
docker build
Dockerfile -> image
도커 이미지 설정 파일인 Dockerfile을 통해 도커 이미지를 만들 때 docker build 명령어를 사용
docker commit
container -> image
실행 중인 컨테이너를 수정한 후 해당 컨테이너로 도커 이미지를 만들 때 docker commit 명령어를 사용
docker save
image -> tar
docker build, commit이 docker hub 와 같은 registry에 push되고 pull받는 방식으로 사용된다면, docker save는 registry를 거치지 않고 docker image를 이동시킬 때 사용
도커 이미지 혹은 컨테이너를 tar 파일로 만들 때 docker save 활용
tar 파일을 다시 docker image로 되돌리기 위해 docker load 사용
docker export
container -> tar
docker container를 tar파일로 저장할 때 docker export 활용
docker export로 만들어진 tar파일을 되돌릴 때 docker import 사용
Docker 컨테이너 생명주기와 관계없이 데이터를 영속적으로 저장하는 방법
volume
docker에서 권장하는 방법 (docker 상에서 이미지, 컨테이너, 네트워크와 비슷하게 관리됨)
docker volume create
볼륨 생성
docker volume rm
볼륨 삭제
docker volume prune
마운트되어 있지 않은 모든 볼륨 삭제 가능
docker run -v 볼륨명
컨테이너 내 경로 명령어로 실행 (docker area와 컨테이너 연결)
여러 개의 컨테이너가 하나의 볼륨에 접근할 수 있기 떄문에 컨테이너 간 데이터 공유 가능
bind mount
호스트 파일 시스템의 특정 경로를 컨테이너로 바로 마운트 가능
docker volume: docker area를 마운트
docker run -v 호스트 경로:컨테이너 내 경로 명령어로 실행
컨테이너화된 로컬 개발환경 구성 시에 유리
디렉터리를 컨테이너의 특정 경로로 마운트해서 코드 실행, 로컬의 변경 사항은 git 등으로 관리 가능
관련 링크 (
link1
,
link2
)
jihyelee
Graduate student at Seoul National University, majoring in Artificial Intelligence (NLP). Currently AI Researcher at LG CNS AI Lab
팔로우
이전 포스트
parametric vs. non-parametric model
다음 포스트
git command 정리
0개의 댓글
댓글 작성