-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FIX]도커 이미지 DB연결 오류 해결 #1
Comments
나머지는 집가서 자세히 보겠습니다. 첫번째 댓글에서 제가 따로 link 또는 depend_on을 하지 않은것은 의도되었습니다. 몇몇개는 제가 집에서 조금 더 보고 코멘트 달게용 |
@JeongHyeongKim 넵넵 알겠습니다! 혹시 도커용 환경변수와 로컬 yarn용 환경변수 파일을 두개로 분리하고 NODE_ENV로 모드 지정하여 실행할 수 있게 하면 어떨까요? |
조나한은 잘 됐다고 하셨었으니 윈도우에만 해당되는 오류일 수 있습니다. 모두 해결하고 생각해보니
아무래도 start.sh에서 docker-compose로 이미지들을 묶는 과정에서 이미지별로 compose파일을 올리다보니
에러가 발생한 것 같기도하네용.. 이미지 명도 도메인으로 사용 해도 된다고 알고있긴한데
작업하다보니 헷갈려서 cmi prefix달려있는 컨테이너 명으로 작업했습니다.
MySQL : Host '컨테이너 private 주소' is not allowed to connect to this MySQL Server
원인:
참고자료
중간 사고과정:
GRANT ALL PRIVILEGES ON *.* TO root@'ip주소' IDENTIFIED BY '비밀번호'' WITH GRANT OPTION;
을 추가한다.api에서만 접근하므로 컨테이너만 한정할 수 있는 방법이 없을까?
-> 도커 연습 레포 에서 links로 비슷한 오류를 해결했으나 개념이 잘 기억나지 않아 블로그 추가 자료에서 정보를 얻은 후 위 grant절 ip주소에 적용.
-> root 계정 생성 시 와일드 카드로 모든 접근을 허용하고 root로 접속하는데 테이블 권한 문제일리가 없었다
-> 해당 상태에서 grant절을 제거해도 정상 접속확인됨.
-> 확인해보니 도커 연습 레포와 달리 쉘스크립트에서 이미지를 따로 따로 묶는 형태여서 그런지 run시 default네트워크가 생성되지 않았음.
-> 같은 네트워크가 아니어서 인/아웃바운드 설정이 필요했던 것으로 원인이 판명됨
-> 인/아웃바운드를 수동으로 설정하는 것보다 그냥 links 추가로 같은 네트워크로 묶는 게 효율적 + links 사용 시 설정된 컨테이너에서만 링크된 컨테이너 이름을 도메인처럼 사용가능하므로 network로 설정했을 때보다 접속 범위를 좁혀 보안적인 측면에서 이점이 있을 것 같음.
단점은 기타 설정 시 컨테이너에만 접근 설정을 하게되면 보안측면에선 좋지만 외부에서 HeidiSQL같은 프론트 소프트웨어로 접속하기가 힘들다.
The text was updated successfully, but these errors were encountered: