일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- TypeError: 'property' object is not iterable
- depends_on
- python all testcode
- 갓재석
- 프로그래머스
- S3
- docker
- github
- OperationalError
- github skyline
- MySQL server on 'db' (115)
- Spring
- docker-compose
- AWS S3
- AWS
- DB
- METACLASS
- depends
- python
- javascript
- 2차 코딩테스트
- classmethod
- 재귀함수가 뭔가요
- classproperty
- 코딩테스트
- 우아한테크코스 2차
- 우아한 테크코스 2차 합격
- springboot 3.0.0
- EC2
- Django
Archives
hanbin.dev
django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on 'db' (115)") 본문
겪었던 오류
django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on 'db' (115)")
hanbindev 2021. 5. 31. 19:11docker-compose
로 개발환경을 구축하기 위해 아래와 같이 docker-compose.dev.yml
파일을 작성했었다.
version: "2"
services:
db:
image: mysql:5.7.34
container_name: dorandoran_db
ports:
- "7001:3306"
environment:
- MYSQL_DATABASE=dorandoran_dev_db
- MYSQL_USER=devuser
- MYSQL_PASSWORD=password
- MYSQL_ROOT_PASSWORD=password
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
timeout: 20s
retries: 10
web:
build:
context: .
dockerfile: ./compose/develop/Dockerfile-dev
volumes:
- ./:/app/
command:
- bash
- -c
- |
python dorandoran/manage.py migrate
python dorandoran/manage.py runserver 0.0.0.0:8000
container_name: dorandoran_web
env_file:
- dev.env
depends_on:
db:
condition: service_healthy
restart: always
ports:
- "8000:8000"
분명 web
이 db
에 의존하고 있음을 명시하고 healthcheck까지 붙여줬는데 왜 안되는지 이해가 안됐다.
문제는 dev.env
파일에 있었다.
DJANGO_DB_HOST=db
DJANGO_DB_PORT=7001 # 이곳
DJANGO_DB_NAME=dorandoran_dev_db
DJANGO_DB_USERNAME=root
DJANGO_DB_PASSWORD=password
web
컨테이너가 db
컨테이너에 접근 할 때의 포트를 외부 포트(7001)로 지정해 줬던 것이다.
내부 포트인 3306
으로 바꾸니 제대로 동작하였다.
DJANGO_DB_HOST=db
DJANGO_DB_PORT=3306 # 잘 된다!
DJANGO_DB_NAME=dorandoran_dev_db
DJANGO_DB_USERNAME=root
DJANGO_DB_PASSWORD=password
'겪었던 오류' 카테고리의 다른 글
[겪었던 오류] Python @lru_cache TypeError (0) | 2021.05.07 |
---|---|
[Django] 변경사항이 없어도 makemigrations가 가능한 오류 (0) | 2021.03.17 |
[Spring] travis ci로 자동 배포 하던 도중 변경사항 적용 안됨 (0) | 2021.02.16 |
[Spring] There is insufficient memory for the Java Runtime Environment to continue. (0) | 2021.02.14 |
[AWS] Permission denied (publickey,gssapi-keyex,gssapi-with-mic) (0) | 2021.02.13 |