MSA(마이크로 서비스 아키텍처)

docker: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by docker)

E재HO 2023. 8. 3. 18:37

문제 해결을 해보자

이런 오류가 뜨고, 이전 문제때문에 도커라이징이 안되는 것을 볼 수 있다.

 

몬가 버전이 맞지 않다는 것이다.

 

나는 2.35를 쓰고 있는데, 2.34나 2.32버전이 필요하다고 젠킨스에서 말해주는 것 같다(추측)

 

이게 찾아보니까 잘 안나오기도 하는데,, 

required docker 라는 걸 보니 우선 도커 버전 업데이트를 해봤다.

 

그 결과?

fail 

짜증나면 지는거다. 이제 도커 재설치를 해볼까...?

 

지식 + 1 할겸 

GLIBC가 뭔지 알아보자

"glibc는 gnu c library를 의미한다. 이게 왜 중요하냐 하면 linux 위에서 돌아가는 거의 대부분의 소프트웨어가 여기에 기반하고 있기 때문이다."

 

음.. 네..

도커 재설치할게요

 

근본원인을 찾아야하지만, 근본원인이 그랜드 캐니언이라면? 일단 해보고 안되면 그때 오른다.. 눈물의 캐니언

 

삭제중...

$ sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli

$ sudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce

 

남은거 싹 정리

$ sudo rm -rf /var/lib/docker /etc/docker

$ sudo rm /etc/apparmor.d/docker

$ sudo groupdel docker

$ sudo rm -rf /var/run/docker.sock

 

도커 재설치

 

사전 패키지 설치

sudo apt update
sudo apt-get install -y ca-certificates \
    curl \
    software-properties-common \
    apt-transport-https \
    gnupg \
    lsb-release

 

 

gpg 키 다운로드

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo \
    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
    $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

도커 설치

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose

https://stackoverflow.com/questions/72990497/getting-glibc-2-32-and-glibc-2-34-not-found-in-jenkins-docker-with-dind-on

 

Getting `GLIBC_2.32' and `GLIBC_2.34' not found in Jenkins (Docker) with DinD on Ubuntu 22.04

I am trying to configure Jenkins as docker container with docker-in-docker on an EC2 instance running Ubuntu 22.04 but I am getting `GLIBC_2.32' and 'GLIBC_2.34' not found when I try to run a script

stackoverflow.com

여기서 나와 비슷한 오류를 찾았다.

22.04버전의 우분투를 사용하면 이렇게 되는 것 같다. ㅎㅎ

 

docker.sock을 통해 런타임환경이 공유가 되어야하는 거 같은데,, 안되는 거같음

그래서 버전을 낮춰보려한다..

 

18.04로 처음부터 싹 밀고 새로해야한다. 눈물난다

 

드디어 docker: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by docker)

이거 안뜬다

3일 그냥 분해시킨 거 같다

하지만 에러 해결했으니 만족한다