Apigateway-service
해당 서비스는 rabbitmq, eureka-server(discovery-service), config-service를 사용한다.
도커 run 옵션을 줄때 환경변수를 세팅해서 연관된 서비스들과 연결될 수 있게 해야 한다.
docker run -d -p 8000:8000 --network ecommerce-network
-e "spring.cloud.config.uri=http://config-service:8888" \
-e "spring.rabbitmq.host=rabbitmq" \
-e "eureka.client.serviceUrl.defaultZone=http://discovery-service:8761/eureka/" \
--name apigateway-service apigateway-service:1.0
MariaDB
Dockerhub에 존재하는 MariaDB를 가져와서 커스텀하여 사용한다.
기존에 로컬에서 만든 DB들을 Container의 MariaDB가 사용할 수 있도록 Dockerfile을 만들때 COPY 하도록 한다.
Dockerfile을 작성한 뒤 docker build -> docker run을 하고
해당 Docker MariaDB의 shell로 접속(docker exec -it ....)
어떤 IP에서든지 root로 접속가능하게 해주도록 설정(?)
grant all privileges on *.* to 'root'@'%' identified by '${pw}';
(DCL인데 해당 부분 학습을 해야겠다.. 옵션들에 대해 잘모르겠음)
Kafka
기본적으로 최소 3개 이상의 Zookeeper 서버, Kafka 를 실행해 쓰는걸 권장한다고 한다.
그러나 토이프로젝트니 1개씩만 띄운다..
docker compose를 사용하는데
docker compose는 여러 docker를 한 번에 실행할 때 어떻게 실행하는가(?)에 대한 문서, 파일이라고 해야할까..
(사실 docker compose도 따로 학습했다. 블로그에 정리해볼 생각이다.)
docker kafka github에서 kafka를 클론하고
해당폴더에서 docker-compose를 나의 docker network에 붙도록 수정해서
docker-compse up -d
ZIPKIN
ZIPKIN 공식홈페이지에서 docker사용법 보고 똑같이 따라하면된다.
Docker run 할때 네트워크만 내가 사용하려는 도커 네트워크로 연결하면 된다.
'Computer Science > MSA' 카테고리의 다른 글
Monolithic Architecture란 무엇인가? (0) | 2021.09.02 |
---|---|
081221 MSA_SpringCloud (0) | 2021.08.12 |
081121 MSA_SpringCloud (0) | 2021.08.11 |
081021 MSA_SpringCloud (0) | 2021.08.10 |
080921 MSA_SpringCloud (0) | 2021.08.10 |