Docker 컨테이너 쉘 환경 접근 및 이미지 생성하기
Docker 컨테이너 쉘 접속
sudo docker exec -it 'container id 혹은 names' sh
exec
: 컨테이너 외부에서, 실행중인 컨테이너에게 명령어를 전달할 수 있게 하는 명령어이다.it
: 컨테이너를 종료하지 않고 터미널에 입력된 명령어를 전달하기 위해 사용한다.(exec
과 많이 사용한다)sh
: 쉘로 들어갈 수 있는 명령어
(해당 컨테이너에서 빠져나오고자 할때는exit
혹은Ctrl + d
를 통해 종료한다.)
Docker 이미지 생성하기(alpine baseimage 기준)
1. Docker file 작성
- Docker 이미지를 만들기 위한
config
파일이다. 컨테이너가 어떻게 행동할 지에 대한 설정을 정의한다.
2. Docker 이미지 생성
- Docker file의 내용이 Docker Client에 전달 및 Docker Server가 인식을 하기 위해서는 해당 파일이 위치한 디렉토리에서
sudo docker build ./
를 입력한다. - 이미지 생성 과정은 다음과 같다. (내가 생성한 이미지 기준)
- Docker server에서 base iamge 가져오기(alpine, 이미지 id:
0a97eee8041e
) - 이미지를 통해 임시 컨테이너(id:
7ab930451f70
)를 생성하고 시작될 명령어CMD["echo","hello"]
가 추가된다. - 임시 컨테이너를 기반으로 새롭게 생성할 Docker image를 만들고, 임시 컨테이너는 삭제한다.
- Docker server에서 base iamge 가져오기(alpine, 이미지 id:
- base image(alpine) id인
0a97eee8041e
와, 내가 생성한 이미지의 id06bdb3750c94
가 다름을 통해 새롭게 image가 생성됐음을 알 수 있다.
3. Docker 이미지 이름 지정
- Docker image에 이름을 주고자 할 경우,
sudo docker build ./ -t 이름
순으로 입력하도록 한다. - 보통 Docker image의 이름은
Docker id / 저장소 or 프로젝트 이름 : 버전
지정한다고 한다.
'Etc' 카테고리의 다른 글
TIL | AWS EC2, pm2, nginx(reverse proxy) 사용하여 개발서버 외부 모니터링 환경 구축하기 (0) | 2021.12.03 |
---|---|
TIL | Docker CRA Dockerizing, 컨테이너 생성 (0) | 2021.11.26 |
TIL | 간단한 가로 스크롤바 구현하기 (0) | 2021.11.16 |
TIL | Meta tag (0) | 2021.11.07 |
TIL | Proxy Server (0) | 2021.10.26 |