[실습] 도커 실습 3 - 커스텀 이미지 생성
필기자
2024-10-09 02:52
660
0
본문
목차
커스텀 이미지 생성
커스텀 이미지 생성 시나리오
리눅스 우분투 기본 베이스 이미지로 빈 컨테이너 생성
컨테이너 내부 접속
아파치 웹 서버 설치
아파치 웹 서버 시작
컨테이너 IP 확인
아파치 초기 화면 확인
컨테이너 내부 접속
초기 화면 html 파일 수정
업데이트된 아파치 초기 화면 확인
자바 설치 및 자바 파일 생성
자바 파일 컴파일 및 실행
컨테이너 커밋으로 새 이미지 생성
새 이미지로 컨테이너 생성 및 컨테이너 IP 확인
업데이트된 초기화면이 기본값이 된 아파치 초기 화면 확인
자바 설치 여부 확인 및 자바 파일 실행 확인
- 커스텀 이미지 생성
커스텀 이미지 생성
커스텀 이미지 생성 시나리오
- 빈 컨테이너 생성 후 아파치 웹 서버와 자바를 설치
- 아파치 초기화면을 변경하고 자바 파일을 생성 및 컴파일한 뒤, 이를 기반으로 이미지 생성
리눅스 우분투 기본 베이스 이미지로 빈 컨테이너 생성
#Ubuntu 컨테이너를 백그라운드에서 실행하고 컨테이너 내부와 상호작용 가능
docker run -dit --name my_ubuntu_container ubuntu:latest
컨테이너 내부 접속
#컨테이너 내부 접속하여 bash 쉘을 실행하여 상호작용 가능
docker exec -it my_ubuntu_container bash
아파치 웹 서버 설치
#소프트웨어 패키지 정보 최신 상태로 업데이트
apt-get update
#아파치 웹 서버 설치
apt-get install apache2
- Do you want to continue? [Y/n] 메시지가 출력 되면 ‘y’ 입력 후 Enter
아파치 웹 서버 시작
#아파치 웹 서버 시작
service apache2 start
#도커 명령어 실행을 위해 컨테이너 내부에서 나가기
exit
컨테이너 IP 확인
#컨테이너의 상세 정보 출력
docker inspect my_ubuntu_container
아파치 초기 화면 확인
컨테이너 내부 접속
#컨테이너 내부 접속하여 bash 쉘을 실행하여 상호작용 가능
docker exec -it my_ubuntu_container bash
#vi 텍스트 편집기 설치
apt-get install vim-tiny
- Do you want to continue? [Y/n] 메시지가 출력 되면 ‘y’ 입력 후 Enter
초기 화면 html 파일 수정
#vi 텍스트 편집기로 아파치 초기화면 파일 내용 수정
vi /var/www/html/index.html
- 수정 후 esc 입력 및 ‘:wq!’ 입력 후 Enter 변경 사항 저장
업데이트된 아파치 초기 화면 확인
자바 설치 및 자바 파일 생성
#자바 설치
apt-get install openjdk-11-jdk –y
#vi 텍스트 편집기로 자바 파일 생성
vi HelloWorld.java
- 입력 후 esc 입력 및 ‘:wq!’ 입력 후 Enter 변경 사항 저장
#Hello, World를 출력하는 자바 파일 생성
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
자바 파일 컴파일 및 실행
#자바 파일 컴파일
javac HelloWorld.java
#자바 파일 실행
java HelloWorld
#컨테이너 내부에서 나가기
exit
컨테이너 커밋으로 새 이미지 생성
#my_ubuntu_container를 기반으로 my_image:v1 이미지를 생성하여 새로운 이미지 생성
docker commit my_ubuntu_container my_image:v1
새 이미지로 컨테이너 생성 및 컨테이너 IP 확인
#컨테이너를 백그라운드 모드로 실행하고, 컨테이너 내에서 아파치 웹 서버를 포그라운드 모드로 시작
#포그라운드 모드로 실행하여 웹 서버를 계속 실행하도록 하는 명령어, 컨테이너가 종료되지 않고 웹 서버가 계속 실행
docker run -dit --name my_image_container my_image:v1 apache2ctl -D FOREGROUND
#컨테이너의 상세 정보 출력
docker inspect my_image_container
업데이트된 초기화면이 기본값이 된 아파치 초기 화면 확인
자바 설치 여부 확인 및 자바 파일 실행 확인
#컨테이너 내부 접속하여 bash 쉘을 실행하여 상호작용 가능
docker exec -it my_image_container bash
#자바 파일 실행
java HelloWorld
#컨테이너 내부에서 나가기
exit
댓글목록0