인프런 커뮤니티 질문&답변

반가우면반갑다고해님의 프로필 이미지

작성한 질문수

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

08-06 Docker 패키징

8-6 도커 compose-build 에러 질문있어요,,

해결된 질문

작성

·

337

·

수정됨

1


ModuleNotFoundError: No module named 'distutils'

 

이런 에러가납니다.
구글링해보면 파이썬 버전관련해서 얘기를하던데..

갑자기 파이썬이 튀어나오니까 당황스럽습니다 ㅜㅜ

 

풀 에러코드는 다음과 같습니다.

$ docker-compose build
Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/bin/docker-compose", line 25, in importlib_load_entry_point
    return next(matches).load()
           ^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
    module = import_module(match.group('module'))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 995, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 9, in <module>
    from distutils.spawn import find_executable
ModuleNotFoundError: No module named 'distutils'

 

다음은 제가 작성한 docker-compose.yaml입니다.

# docker-compose.yaml

version: '3.7'

services:
  my-backend:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./src:/myfolder/src
    ports:
      - 3000:3000
    env_file:
      - ./.env.docker

  my-database:
    image: mysql:latest
    environment:
      MYSQL_DATABASE: 'mydocker'
      MYSQL_ROOT_PASSWORD: 'root'
    ports:
      - 3306:3306

 

혹시 고수님들 이 문제에대한것을 알고계신다면 답변주세요..
혹시나 제가 해결했을 경우 댓글에 해결완료라고 제가 적겠습니다.. 도움이 필요합니다..

오늘 하루종일 mysql 로컬 연결 에러와, 지금 이 에러에 강의진도를 못나가니 심신미약상태가 되어버렸네요..

답변 2

1

노원두님의 프로필 이미지
노원두
지식공유자

안녕하세요! 반가우면반갑다고해님!

스스로 문제를 해결하시다니, 점점 개발자가 되어가시는 것 같아 뿌듯하네요!^^
이정도의 열정이라면, 빠른 시간내에 실력있는 개발자가 될 것임에 믿어 의심치 않아요!

또한, 해결 과정도 친절히 남겨주셔서 감사합니다!^^

1

안녕하세요 해결했습니다.
https://github.com/docker/compose/issues/4874

위의 링크에서 맨 아래 스크롤쪽에서 emirom 님이 달은거를참고하여 해결했습니다.

 


Reinstalling docker-compose worked for me
First, remove the old version:

If installed via apt-get
sudo apt-get remove docker-compose

If installed via curl
sudo rm /usr/local/bin/docker-compose

If installed via pip
pip uninstall docker-compose

Now Install the new one:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
then
sudo chmod +x /usr/local/bin/docker-compose

위의 순서대로 실행하여 해결했습니다,.

 

 

모두 즐거운 공부되세요 ㅠ_ㅠ..