TIL( Today I Learned)
21-04-26 월
- bg job 동작 확인
- 3시 미팅
-
jenkins vm ssd 용량 늘리기
- 불필요한 파일 제거함
21-04-27 화
-
Dockerization
- git 정리하기
- 공유문서
21-04-28 수
- GCP Loadbalancer 달기
21-04-29 목
- LB 구성 따라가기, 에러 개선하기
- 로커스트 부하 테스트
- Docker Gunicorn DB conn 없이 동작 확인하기
- Django logger Error 확인하기
21-04-30 금
- Docker, LB 문서 만들기
- 개발 환경 Docker로 만들기
-
도커 IntelliJ로 띄우기
- compose 파일 지정해도 compose 전체를 띄우는게 아니다.
- compose에 지정된 python path만 띄운다
-
DB 는 로컬 호스트로 접근을 하지 못한다.
- ‘localhost’
- ‘network ip’ 로 띄워야 한다.
-
DB 연결 호환성을 잡아 주는게 문제…
- 해당 ENV 에 DB 가 정의 되어 있다면
- 다행히 compose에 정의된 환경 변수들을 읽는다!!!
TEL (Trial and Error Log)
21-04-26
-
ERROR: mysql docker container keep restarting
- SITUATION: docker 올리는중
- REASON: 필수 환경 요소 뺴먹음
-
SOLUTION:
- ENV 잘 챙기기
-
ERROR: “Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’
- SITUATION: compose로 mysql db 실행중
-
REASON:
- django 에서 접속 주소로 localhost를 지정 했음
- docker에서 할당 받는 주소가 localhost가 아니다.
-
SOLUTION:
<= localhost
-
ERROR: OperationalError: (1045, ‘Plugin cachingsha2password could not be loaded
- SITUATION:
docker-compose up -d
-
REASON:
- mysql version problem
-
SOLUTION:
- mysql:5.7 <= mysql:latest
- SITUATION:
-
ERROR: Error response from daemon: remove gsapidj-database: volume is in use
-
SITUATION:
docker-compose up -d
-
REASON:
- 기존에 사용 하던 volume이 안죽음
-
SOLUTION:
docker network prune -f
-
-
ERROR: “Unknown MySQL server host ’
- SITUATION:
docker-compose up -d
-
REASON:
- mysql 연결 안됨
-
SOLUTION:
- mysql 시작 port 연결 잘못해서 그럼
- SITUATION:
21-04-27
-
ERROR: docker compose gunicorn 부팅시 wsgi module파일 못찾음
- SITUATION: docker image COPY —from=builder
-
REASON:
- /usr/local/bin/ 에 gunicorn 이 있어야 실행 할 수 있음
-
SOLUTION:
COPY --from=builder /usr/local/bin /usr/local/bin
추가
21-04-28
-
ERROR: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
- SITUATION: nginx 동작중
-
REASON:
- 시스템 데몬의 불완전 동작으로 인하여 발생하는 로깅문
-
SOLUTION:
- sudo fuser -k 80/tcp
- sudo fuser -k 443/tcp
21-04-29
-
ERROR: GCP NAT 네트워크 에러
- SITUATION: VM에서 일정 이상 접속하면 api 끊김
-
REASON:
-
VM당 접근 port 최소 수가 낮음
- 2분내에 정해진 이상 연결이 생기면 처리를 못함
-
-
SOLUTION:
- VM당 접근 Port 최소 수 올림
-
ERROR: Gunicorn django Ignored premature client disconnection. No more data after
- SITUATION: Gunicorn Running On Develop
- REASON: http를 받는데 https 를 보냄
-
SOLUTION:
- Nginx 이용한다
- Error Gunicorn 과 Runssrver는 다르다. Gunicorn application은 runserver와 달리 유효성 검증을 먼저 하지 않는다.
21-04-30
-
ERROR: docker compose db service 인식을 못함
-
SITUATION:
- docker-compose up 하는데 service 인식 못함
-
REASON:
- 기본 실행하는 port 가 있는데 그걸 내맘대로 바꿔버렸다.
-
SOLUTION:
- 33060:3306 <= 33060:33060
-