traefik 에러 해결 리스트
- 미들웨어 basic auth 적용시
chatGPT에 물어보면
htpasswd -nbB user password | sed -e 's/\\$/\\$\\$/g'
=> 이렇게 하면 오히려 sed 적용이 안되서 따옴표를 빼고 적용하니
htpasswd -nbB user password | sed -e s/\\$/\\$\\$/g
=> 이렇게하면 정상적으로 작동, 그런데 3.0 부터는 $$를 쓰면 오히려 적용 안됨
htpasswd -nbB user password
이번에는 이걸로 알려줘서 해보니까 이번에는 이걸로 적용이 된다....
아마 traefik 버전별로 적용방식이 달라지는 듯.
2. 따옴표 에러
가끔씩 url 경로를 엔터옆의 따옴표 ' 로 알려주는 경우가 있는데 1 숫자 `로 해야 적용이 잘 됨.
- 가끔씩 traefik이 먹통이 되는 경우가 있음.
이 설정을 추가해주니 문제가 생길때마다 리셋을 해주긴 하는데 근본적으로는 firewalld와 도커가 쓰는 iptables와 호환이 맞지 않아 생기는 문제라고 함. 그래서 차라리 iptables로 방화벽 설정을 하거나 ufw로 하라고 하는데 ....UFW는 지난번에 사용했을때 한번 오류가 난적이 있었음.
services:
traefik:
image: traefik:latest # 최신 안정 버전
deploy:
mode: replicated
replicas: 1
placement:
constraints:
- node.role == manager
restart_policy:
condition: any # <-- 핵심: 어떤 종료든 재시작
delay: 10s # <-- (선택) 재시작 전 10초 대기
max_attempts: 5 # <-- (선택) 최대 재시도 횟수
window: 60s # <-- (선택) 실패 감지 시간 범위
ports:
- 너무 당연한 거지만 yml작성할때는 열 잘 맞춰야 배포가 잘됨. 이거 안 맞췄다가 한참 헤맨적 있음.
오류 해결 일지7/28
traefik에 왜이렇게 routing이 등록 안되는지 비교를 했더니. deploy 라인이 맞지 않았던 것! deploy: lables: - ~~~ 이렇게 와야 되는데 deploy: lables: - ~~~ 같은 라인으로 chatGPT가 알려줘서.... -_-;;
