반응형
1. 목표
- Docker container의 환경을 Docker image로 만들면 내가 필요한 컨테이너 환경을 커스텀하여 사용
- ubuntu기반 NVM(Node Version Manager)가 설치된 Docker container를 Docker image로 생성
2. 환경
- Windows11
- Docker version 20.10.16
- Docker Compose version v2.6.0
- Ubuntu 18.04
- NVM
3. 진행과정
3-1. Docker Hub에서 사용할 OS image 선택
3-2. 선택한 OS image로 Docker container 실행
# docker-compose.yml
version: "3.7"
services:
ubuntu:
image: ubuntu:18.04
command: tail -f /dev/null
# docker-compose.yml 실행
docker-compose up -d
3-3. Docker container 내부에 NVM 설치
apt-get update
apt-get install curl -y
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash
3-4. Docker container commit
# docker commit <container-name> <image-name>:<tag>
docker commit ubuntu_nodejs-ubuntu-1 ubuntu-nodejs:my
3-5. 생성된 Docker image로 Docker container 실행
# docker-compose.yml
version: "3.7"
services:
ubuntu:
image: ubuntu-nodejs:my
3-6. Docker container 내부에서 프로필 파일 하단에 NVM 소스 라인 적용
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
반응형
'Docker' 카테고리의 다른 글
Docker compose configuration (0) | 2024.04.04 |
---|---|
RabbitMQ Docker compose 구성하기 (0) | 2024.03.27 |
Docker 명령어 정리 (0) | 2024.01.15 |
executor failed running [/bin/sh -c apt-get update]: exit code: 100 이슈 (6) | 2023.08.18 |
PHP, Nginx, MySQL 환경 Docker Compose 구성하기 (0) | 2023.08.18 |