- 컨테이너 형태로 배포 및 실행하여 어디서든 동일한 환경에서 동작하도록 보장하며, 편리하게 배포 가능
https://dean83.tistory.com/176 여기에도 내용이 있다. - 이미지
- 실행에 필요한 라이브러리, 실행파일 포함한 패키지
- 한번 구성되면 불변
- 컨테이너를 실행하기 위핸 설계도의 개념임.
- 컨테이너
- 실행환경 구성
- 이미지를 컨테이너 내에서 실행
- 격리되어 있어서 여러개 동시에 실행 가능하고 컨테이너 간 영향을 받지 않음
몇몇 커맨드 설명
- 대부분은 IDE 에서 가능하므로 잘 쓸일은 없다.
- docker pull 이름:버전
- 이미지를 내려 받는다
- 이미지를 내려 받는다
- docker stop 이름 혹은 컨테이너 id
- docker ps -a
- 도커 컨테이너 목록 조회
- 도커 컨테이너 목록 조회
- docker rmi 이름:버전
- 도커 이미지를 삭제 한다.
- 도커 이미지를 삭제 한다.
- docker inspect 프로세스아이디
- 실행중인 도커 컨테이너의 상세 정보를 보여준다.
- 프로세스아이디는 docker ps 를 통해 확인 할 수 있다.
- docker volume create 이름
- docker를 실행하는 pc에 볼륨을 생성하여, docker 볼륨매핑을 통해 데이터를 동기화 한다.
- docker를 실행하는 pc에 볼륨을 생성하여, docker 볼륨매핑을 통해 데이터를 동기화 한다.
- docker run
- -d 옵션 : 백그라운드에서 동작
- -e 옵션 : 환경변수 값을 주입하여 실행
- -p 옵션 : 포트번호 매핑
- 앞쪽 포트는 컨테이너가 실행되는 pc의 포트
- 뒤쪽 포트가 컨테이너의 포트
- -v 옵션 : 볼륨 매핑
- 앞쪽 인자값은 컨테이너 실행 pc의 디렉토리 (전체경로) 혹은 볼륨 이름
- 뒤쪽 인자값은 컨테이너 내부 디렉토리
- --name 옵션 : 컨테이너 이름 지정
- 이미지명
을 이용하여 도커 이미지를 실행. \ 를 사용하면, 줄바꿈 하여 명령을 내릴 수 있다.
아래는 실행 예 이다.
docker run -d \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=password \
-v /Users/Documents/test:/data/db \
--name mymongo \
mongo:8
- docker logs 컨테이너 이름 혹은 아이디
- -f 옵션 : follow 하여 계속 로깅을 확인
- -n 숫자 옵션 : 최신 로그 몇개만 확인
- docker 컨테이너 내 shell 연결
- IDE 혹은 도커 데스크탑에서 실행중인 컨테이너 선택 -> Cli 혹은 terminal 클릭 하면 접속 가능
- docker exec -it 컨테이너명 명령어로 실행 가능
Docker 네트워크 (포트 바인딩, 포워딩)
- 컨테이너 실행시 네트워크는 별도의 네트워크를 가지며, 독립된 IP 주소 등을 갖는다.
- 외부에서 컨테이너 내부로 바로 접속 할 수 없으므로, 컨테이너 실행 pc로 연결 -> 컨테이너 연결 하게 된다
- docker 실행시 -p 옵션을 통해 포트 바인딩을 해준다.
- 컨테이너가 실행되는 pc의 포트번호 : 컨테이너 포트번호
Docker 볼륨매핑
- 컨테이너 내부에 쓰기 가능 구역에 데이터들을 저장하게 된다.
- docker rm 등 컨테이너를 삭제하면, 해당 데이터 들도 당연히 삭제 된다.
- 볼륨매핑을 통해, 컨테이너 내부 저장소를 컨테이너가 실행되는 pc에 매핑하여, 데이터를 컨테이너 외부에 저장하도록 한다.
- 컨테이너의 내부 디렉토리를 외부에 매핑하여, 컨테이너 실행 pc 에도 저장되도록 한다.
- 양쪽 모두 저장이 되고 동기화가 된다.
- -v 옵션을 통해 매핑한다.
- 컨테이너 실행 pc의 절대경로 : 컨테이너의 경로
- 혹은, docker volumn create 를 통해 생성한 볼륨을 매핑한다.
'Docker' 카테고리의 다른 글
| Docker network (0) | 2025.11.12 |
|---|---|
| docker 이미지 AWS ECR에 올리기 (0) | 2025.11.07 |
| Docker compose (0) | 2025.11.06 |
| Dockerfile 구성 및 빌드(hub에 업로드) (0) | 2025.11.06 |