728x90
컨테이너 개조란?
도커를 실제로 사용하는 현장에서는 사내에서 개발한 시스템을 운영하는 경우가 많다. 또는 공식 배포되는 SW를 수정해야 할 필요가 종종 있다. 대단한 수정은 아니지만 설정 파일을 매번 작성하기는 귀찮기 때문이다.
컨테이너 개조하는 방법
2가지 방법이 있다. 대부분 이 2가지 방법을 같이 사용한다.
1) 이전에 다뤘던 파일복사
와 마운트
를 이용한 방법
2) 컨테이너에서 Linux 명령어
를 실행하는 방법. SW를 설치하거나 설정을 변경할 수 있다.
컨테이너에서 명령어를 실행할 때 shell
이 필요하다
컨테이너에서 리눅스 명령어
를 실행하려면 리눅스에서 사용자의 명령
을 전달해주는 프로그램인 shell
이 있어야 한다.
여러 가지 shell이 있지만 가장 일반적으로 사용되는 bash
를 기준으로 살펴볼 것 이다.
그렇다면 컨테이너에서 bash를 사용하기 위해서 어떻게 커맨드를 작성해야 할까
- 컨테이너를 만들자마자 bash shell을 실행하고 싶을 때
다만 이 경우에는 컨테이너에 있는 SW를 실행하는 대신에 bash가 실행되므로 컨테이너는 실행 중
이지만 SW는 실행 하지 않는
상태가 된다.
그래서 bash를 사용해서 컨테이너 조작이 끝나고 나면 docker start 커맨드
를 통해 컨테이너를 재시작해야 한다.
docker run (옵션) 이미지_이름 /bin/bash
또는 docker run (옵션) 이미지_이름 bash
기존에 만들었던 컨테이너에 bash shell을 실행하고 싶을 때
docker exec (옵션) 컨테이너_이름 /bin/bash
또는 docker exec (옵션) 컨테이너_이름 bash
즉, 컨테이너를 만들고 나서 `컨테이너 내부에 대한 명령`을 `bash 셸`을 통해서 실행하는 것이다.
컨테이너 내부에 대한 명령을 다 수행하고 나면 `exit`를 입력해서 컨테이너 내부에서 나오면 된다.
'Docker' 카테고리의 다른 글
[Docker] 7-1. 도커 컴포즈란? (0) | 2023.05.30 |
---|---|
[Docker] 6-6 도커 허브 등록 및 로그인 (0) | 2023.05.29 |
[Docker] 6-4. 컨테이너로 이미지 만들기 (0) | 2023.05.28 |
[Docker] 6-3. 볼륨 마운트 (0) | 2023.05.28 |
[Docker] 6-2. 컨테이너와 호스트 간에 파일 복사 (0) | 2023.05.23 |