안녕하세요. fastapi 강의 수강 중입니다.
안녕하세요. fastapi 강의 수강 중입니다.
섹션2에서 데이터베이스 생성과정 중
docker exec -it todos bash를 하면
Error response from daemon: Container c77ef59c10ff05ebd5ead765aa6f64ac185daa38214ad0fc5195750cace0b167 is not running
위와 같은 에로가 나오는데요, 나름대로 구글링을 해보니까 docker start를 사용해 도커 실행을 해주면한다해서 해보면
Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: address already in use
이러한 에러가 나옵니다.
docker와 mysql을 연결하는 명령어에서 다 잘 다운로드되고 마지막에
docker: Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: address already in use.
이런 에러가 뜨긴했는데 우선 넘어가보니 docker ps를 해보면 실행중인 컨테이너가 없습니다.
도커를 아예 처음 접하다보니 시작단계에서 어려움이 있는데 도움 부탁드립니다.
답변 1
0
안녕하세요. address already in use 라는 에러는 이미 3306 포트를 사용 중인 프로그램이 있다는 의미인데요. 혹시 로컬 환경에 다른 mysql이 동작 중이 아닌지 의심됩니다.
어떤 운영체제를 사용 중이신가요?
0
감사합니다. 이전에 설치한 MariaDB랑 충돌이나 그랬었네요. 위 질문은 해결하였습니다.
다만, pip를 통해 라이브러리들을 다운로드 성공하였는데 파이썬 콘솔에서 임포트 시 ModuleNotFoundError: No module named 'pymysql'나옵니다. 인스톨이 제대로 안된거 같아 다시 인스톨 해보면 정상적으로 인스톨 되어 있는데 이 부분은 왜 그런건가요?
0
네 했습니다. 왜 이럴까요...
Traceback (most recent call last):
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/pydevconsole.py", line 364, in runcode
coro = func()
^^^^^^
File "<input>", line 1, in <module>
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, args, *kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/jmok/Desktop/Study/fastAPI/projects/todos/src/database/connection.py", line 6, in <module>
engine = create_engine(DATABASE_URL, echo=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in create_engine
File "/Users/jmok/Desktop/Study/fastAPI/projects/todos/lib/python3.11/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
return fn(*args, **kwargs) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^
File "/Users/jmok/Desktop/Study/fastAPI/projects/todos/lib/python3.11/site-packages/sqlalchemy/engine/create.py", line 601, in create_engine
dbapi = dbapi_meth(**dbapi_args)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/jmok/Desktop/Study/fastAPI/projects/todos/lib/python3.11/site-packages/sqlalchemy/dialects/mysql/pymysql.py", line 75, in import_dbapi
return import("pymysql")
^^^^^^^^^^^^^^^^^^^^^
File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 21, in do_import
module = self._system_import(name, args, *kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'pymysql'
0
경로 확인해보니 pip경로가 homebrew로 되어있네요.
이런 상황에서 문제를 해결하려면 가상환경 내에서 라이브러리를 인스톨할 때도 pip 경로를 수정해주고 설치해야되는건가요?
다시 로컬에 다운받을 때는 경로를 또 수정하고 이런식으로 인스톨 경로 수정해가면서 하는게 맞는건가요?
가상환경에 대한 이해도가 없어 드는 의문인데 가상환경은 말 그대로 로컬과 다른 가상의 환경인데 왜 로컬이랑 경로가 겹치는지 이해가 잘 가지 않아서요...ㅎㅎㅎ
0
이해하고 계신대로 가상환경은 프로젝트 별로 독립된 파이썬 환경입니다. 가상환경이 정상적으로 적용되었다면 별도의 경로 변경 없이 독립된 환경에 패키지가 인스톨 되어야합니다!
FasAPI Swagger UI에서 단일조회 todo_id 를 사용했는데, 입력값에 1을 넣으니 오류가 뜹니다 ㅠ
0
87
2
DB 질문
0
81
2
Post API 강의 질문
0
55
2
post 작성 오류
0
107
3
uvicorn 종료 문제
0
436
2
왜 return타입이 ToDo라는 스트링인가요?
0
130
2
ORM 연관관계
0
109
2
Oracle DB 연결과 관련해 질문이 있습니다..
0
153
2
섹션 2, 3의 PATCH API의 차이점
0
132
1
ORM 테이블 생성
0
119
1
테스트 코드 오류
0
177
1
orm relationship 정의 중 해당 에러 발생 시 어떻게 고쳐야 하는걸까요
0
214
3
FastAPI 폴더 구조에 대해 질문이 있습니다.
0
412
2
질문 있습니다.
0
161
2
ORM 개념
0
133
1
mysql root 비밀번호 변경관련
0
296
2
[질문] patch API
0
151
3
디자인 패턴
0
128
1
main.py 리로드문제
0
235
2
인터프리터 오류
0
286
4
로그 저장에 대한 질문입니다.
0
100
1
Internal Server Error
0
240
2
PATCH API - 수정
0
199
2
파이참 임포트 문제
0
263
1





