06 (실습)Alpine 리눅스 기본 이미지 만들기
Alpine Linux:
- 보안, 간편성, 리소스 효율을 위해 디자인된 리눅스 배포판
- 용량 줄이기 위해 다양한 노력
예, glibc -> musl libc, Linux commands -> 단일 명령으로 변경
이번 실습은 Fedora 이미지를 활용해 AlpineFedora Linux 이미지를 직접 생성해 보기다.
https://github.com/go4real/linux_campus/tree/main/part1/Ch01_06
GitHub - go4real/linux_campus
Contribute to go4real/linux_campus development by creating an account on GitHub.
github.com
(실습을 진행하기 앞서 Part1. Ch02. 05 실습 환경 구성 - VS Code 설정 강의를 먼저 진행해야 한다.)
1. ec2 인스턴스에 도커를 사용하기 위해 sudo apt install docker.io 명령어로 도커를 설치한다.
2. 페도라는 yum 이라는 명령어로 패키지를 관리한다.
따라서 docker run --rm fedora yum update 명령어를 이용해서 fedora package update를 실행한다.
3. mkdir base_image && cd base_image명령어로 디렉토리를 만들고 그 디렉토리로 들어간다.
4. Alpine Linux용 루트파일 시스템을
wget https://github.com/alpinelinux/docker-alpine/raw/fc965e3222f368bea8e07c1c1da70b6928281a76/x86_64/alpine-minirootfs-3.15.4-x86_64.tar.gz 명령어를 이용해서 다운로드한다.
5. mkdir alpine_root 명령어로 디렉토리를 만들고 tar zxf alpine-minirootfs-3.15.4-x86_64.tar.gz -C alpine_root/ 명령어로 alpine_root 디렉토리안에서 압축파일을 해제한다.
6. ls -lh alpine_root/ 명령어로 루트파일시스템의 내용을 확인한다.
7. 이제 vi Dockerfile 명령어로 도커파일을 생성해보자
도커파일의 내용은 아래와 같다.
베이스 이미지로 scratch가 아닌 fedora로 설정했고 fedora 배포판에 alpine 리눅스의 root 파일시스템을 덮어씌운 형태다.
8. docker build --tag alpine_fedora . 명령어로 도커파일에 대한 도커 이미지를 만든다.
9. docker images 명령어로 생성된 이미지를 확인한다.
10. docker run --rm alpine_fedora apk update 명령어로 이미지 실행하여 os 정보 확인한다.