@마크다운
예약 시스템을 만들던 도중 로컬에서 되던 포스트맨이 서버에서 동작하지 않는 경우가 발생했다.
ascii 어쩌고 하면서 에러가 떴는데
인코딩관련 에러 라고 한다.
그래서 이게 왜 안되나... 로컬에서 다 확인하고 올린건데...
문제는 사용하고 있는 docker였다.
docker에서 인코딩 설정을 UTF-8로 바꾸니 그제서야 동작하기 시작..
그리고 이 문제를 해결하고 나니 이번엔 UTC가 맞지 않는 문제가 발생
예약에서 시간단위로 예약을 받기 때문에 이번엔 문제가 뭘까 생각했는데
django안에서는 settings에서 시간설정을 맞춰서 아무런 문제가 없는데 서버에만 올라가면 시간이 뻑이나는것을 발견
이번에도 docker가 문제구나!
docker에서 시간설정을 한국으로 맞추고 실행했더니 시간도 잘 맞아 떨어졌다.
docker를 사용한다면 docker의 설정이 django의 설정을 무시해버리는것 같다.
# 문제를 해결해준 고마운 코드들
## 인코딩 타입변경
```
ENV LANG C.UTF-8
```
## 한국시간으로 설정
```
ENV TZ 'Asia/Seoul'
RUN echo $TZ > /etc/timezone && apt-get update && apt-get install -y tzdata && rm /etc/localtime && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && dpkg-reconfigure -f noninteractive tzdata && apt-get clean
```
docker가 django의 환경설정을 덮어버리는 원인을 아시는분은 제발 가르침을 하사해주십시오..
'notes' 카테고리의 다른 글
git commit 100MB이상 파일 지우기 (0) | 2017.12.07 |
---|---|
rest API에 페이스북 로그인 (소셜 로그인)하기 (0) | 2017.09.19 |
django generic view 사용시 method마다 다른 serializer사용하고 싶을 때 (0) | 2017.09.12 |
자주 쓰일것 같은 정규표현식 (휴대폰 번호 정규식 , 일반전화 정규식 등등) (0) | 2017.09.12 |
SQL 기초정리 (0) | 2017.08.28 |