티스토리 뷰
컨테이너를 다뤄봤으니, 다른 호스트에 같은 환경을 마추기 위한 작업으로 이미지를 만들어 볼것이다
지금까지는 공식적으로 배포해준 아파치(httpd)이미지를 대부분 예제로 사용했는데, 손쉽게 docker 명령어 몇줄로 아파치 환경을 구축할 수 있었던 것처럼, 이제 내가 만든 컨테이너를 이미지로 만들어 단 몇줄의 명령어로 손쉽게 환경을 구축할 수 있도록 한다.
commit 명령어와 dockerfile을 통해 이미지를 만들 수 있는데 두가지 다 살펴보도록 하자.
이번에도 아파치(httpd)을 사용하겠지만, index.html를 수정한 후 이미지를 만들어 해당 이미지로 컨테이너를 만들면 초기 화면이 다르게 나오는 것을 보고자 한다.
이렇게 index.html를 변경하여 초기 화면이 다르게 나오는 것을 확인해보자.
잘 변경이 되었고, 이제 이 문구가 초기 화면으로 나오는 이미지를 생성해보자!!
1. commit을 이용한 이미지 만들기
docker commit [컨테이너명] [이미지명] 으로 이미지를 만들 수 있다.
이처럼 commit 명령어를 통해 change_apatche 이미지가 생성 된 것을 볼 수 있다!
그럼 이제 이 이미지를 가지고 컨테이너를 한번 생성해보자.
이처럼 생성했으니.. 8081 포트로 들어가 확인해보자!
commit으로 생성한 이미지로 컨테이너를 만드니.. 그상태 그대로 보여주는 걸 확인할 수 있다.
이렇듯, 이미지를 만들어 협업을 진행하거나, 서버를 구축하게 된다면.. 버전을 맞춰줘야 하는 번거로움에서 벗어날 수 있고, 손쉽게 모든 환경을 똑같이 구축 할 수 있다는 장점이 있다.
2. dockerfile 로 이미지 만들기
dockerfile로 이미지를 만드는 것은 commit으로 하는 것과는 조금 다르게 진행된다. 일단, 재료가 될 폴더에 이와 같이 만들어준다.
Dockerfile 과 컨테이너로 옮길 index.html을 만들어 주고, Dockerfile 에는 밑에와 같이 작성해준다.
FROM은 어떤 이미지를 생성 할것인가, COPY는 해당 파일을 해당 폴더에 복사하라는 뜻이다.
그 후 build 커맨드를 이용하여 이미지를 빌드할 수 있다고 한다.
docker build -t [만들 이미지명] [재료 폴더 위치] 로 이미지를 생성할 수 있다.
여기서는 dockerfile_image_test 라는 이름으로 이미지를 만들었고, 이미지 목록을 봐보면..
잘 생성된 것을 볼 수 있었다.
그럼 이 이미지를 토대로 한번 컨테이너를 생성해보자.
새로 만든 이미지를 가지고 컨테이너를 생성해줬다. 그럼 포트 8092로 들어가보면..
index.html에 작성된 문장 그대로 초기화면이 설정 된 것을 볼 수 있었다..!
이처럼 두가지를 이용해 이미지를 생성할 수 있었다...!
dockerfile 보단... commit이 훨씬 간단하고 편한 것 같긴하지만.. Dockerfile과 commit 2가지 모두 존재하는 이유가 있을 것이다.
아직 잘 모르겠다.. 밑에 블로그를 참고해 보길..
'깃(Git) & 도커(Docker)' 카테고리의 다른 글
10. 도커(docker) 허브 (0) | 2022.09.13 |
---|---|
9. 도커(docker) 컨테이너 개조 (0) | 2022.09.13 |
7. 도커(docker) 볼륨 마운트 (0) | 2022.09.12 |
[부가] 도커(docker) 컨테이너 터미널 접속 (0) | 2022.09.12 |
6. 도커(docker) 파일 복사 이동 (0) | 2022.09.12 |
- Total
- Today
- Yesterday
- github
- GIT
- 디텍션
- c3k2
- YOLO
- 자바
- 오류
- Tree
- 정리
- GNN
- 뜯어보기
- 백준
- 알고리즘
- YOLOv8
- 티스토리챌린지
- yolov11
- 깃
- 어탠션
- CNN
- java
- 도커
- 오블완
- docker
- V11
- python
- 이미지
- DeepLearning
- 초보자
- 딥러닝
- 욜로
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |