728x90
반응형
최신 버전을 유지해야하는 이유
1. 기존 기능 개선 및 new feature
2. 버그 수정
3. 보안 패치
4. 성능 개선
5. 최신 기술과의 호환성
6. 커뮤니티 및 생태계 지원
7. 유지 관리 및 오랜 기간의 지
운용중인 Docker 엔진 업데이트
시나리오
ubuntu 18.04 운영 체제에 docker 19.x 버전을 사용 중이다.
새로운 기능의 호환성을 맞추고 성능 향상을 위해 최신 업데이트를 결정했다.
작업절차
1. 기존에 실행 중인 컨테이너들을 stop 한다.
2. 현재 사용 중인 19.x 버전의 docker 엔진을 삭제
3. 최신 버전의 docker 엔진을 설치
4. 기존 버전에서 운영 중이 였던 컨테이너 기동(start)
5. 에러 발생시 원인 파악, 문제해결 -> 중지 되었던 컨테이너 시작
6. 필요에 따라 ubuntu linux 18.04 -> 22.04로 업그레이
명령어
# uname
# cat /etc/os-release
# docker version
# docker run -d -p 9001:80 --name=nginx-web nginx:1.19
# docker run -d -p 9002:80 --name=httpd-web httpd:2.4
# docker ps
참고
docker 엔진 update 전에 해당 컨테이너를 stop하거나, docker 삭제 시 자동 강제 stop 됨
현재 사용중인 docker-cd 19 버전 삭제
기존 도커 삭제 후 최신 버전 docker 설치
# apt update
# sudo apt -y remove docker-ce
# apt -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
gpg key download
# curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
docker repository 등록 및 docker 설치
# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] <https://download.docker.com/linux/ubuntu> $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# cat /etc/apt/sources.list.d/docker.list
deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] <https://download.docker.com/linux/ubuntu> jammy stable
!! 최신 docker 설치 및 확인
# apt update
# apt -y install docker-ce docker-ce-cli containerd.io
# docker --version
Docker version 25.0.4, build 1a576c5
# docker version
# docker ps -a
이전 버전에서 실행 중 이던 컨테이너를 실행 시킨다.
- 모두 종료 되어 있다가 start를 해주니 실행되었다.
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cecce18a35ab google/cadvisor:latest "/usr/bin/cadvisor -…" 2 weeks ago Up 5 minutes 0.0.0.0:9559->8080/tcp, :::9559->8080/tcp cadvisor
# docker start nginx-web
# docker start httpd-web
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e14d8706f37d httpd:2.4 "httpd-foreground" 18 minutes ago Up 2 seconds 0.0.0.0:9002->80/tcp, :::9002->80/tcp httpd-web
ffe8f193c57a nginx:1.19 "/docker-entrypoint.…" 19 minutes ago Up 11 seconds 0.0.0.0:9001->80/tcp, :::9001->80/tcp nginx-web
cecce18a35ab google/cadvisor:latest "/usr/bin/cadvisor -…" 2 weeks ago Up 3 minutes 0.0.0.0:9559->8080/tcp, :::9559->8080/tcp cadvisor
# curl localhost:9001
# curl localhost:9002
반응형
'DevOps' 카테고리의 다른 글
docker hub repositories에 image push (0) | 2024.03.19 |
---|---|
docker image 이해와 구조 확인 (0) | 2024.03.15 |
02. docker 컨테이너 가상화 & VM 가상화 (1) | 2024.03.13 |
01. 컨테이너 기술이란? (0) | 2024.03.13 |
Fast Campus 강의 필기 (0) | 2024.03.13 |