실습 - tomcat과 mysql stack deploy 하기
tom-Dockerfile과 sql-Dockerfile을 만든다.
sql-Dockerfile는 기존과 똑같이 만든다.
그후 docker build로 image를 만든다. (run으로 컨테이너 생성후 exec로 잘 되는지 테스트)
dbtest.jsp를 만든다.
jdbc를 설치한다.

위와 같이 tom-Dockerfile을 작성한다.
1) WORKDIR을 명령어 cd로 이해한다.
2)
그 후 sql-Dockerfile과 같이 build후 run 한다. 이때 run 할떄 --link sql을 넣어준다.
curl localhost:8088/dbtest.jsp로 연결이 되는지 확인한다.
확인 후 docker rm -f로 컨테이너를 전부 지워준다.
docker swarm init으로 매니저를 지정해준다.
생성된 토큰으로 worker를 만들어준다.

docker-compose.yml을 위와같이 만들어준다.
/mysql 디렉토리를 만들고 docker stack deploy -c docker-compose.yml tom 를 통해 stack deploy를 해준다.
curl localhost:8090/dbtest.jsp로 마지막 테스트를 한다.
aws에서 registry 인스턴스 생성 후 docker container run -d --restart=always -p 5000:5000 -v /registry:/var/lib/registry/docker/registry/v2 --name reg registry:latest 명령어로 reg 컨테이너를 만든다.
docker run -d -p 5001:8080 --name registry_web --link reg -e REGISTRY_URL=http://<172로 시작하는 본인 인스턴스주소>:5000/v2 -e REGISTRY_NAME=<172로 시작하는 본인 인스턴스주소>:5000 hyper/docker-registry-web 으로 reg에 링크되는 registry_web 컨테이너를 만든다.
그리고 registry public 주소:5001로 접속하면 결과물이 뜬다.

docker 셸로 와서 /etc/docker/daemon.json 파일을 위와 같이 작성한다.
systemctl restart docker 로 재시작 해주고 docker tag dbimage:1.0 <본인 퍼블릭주소>:5000/dbimage:1.0, docker tag tomimage:1.0 <본인 퍼블릭주소>:5000/tomimage:1. 로 태그를 바꿔 재생성한다.
그후 docker login <본인 퍼블릭주소>:5000 으로 도커허브에 로그인 후 docker push 3.37.128.155:5000/dbimage:1.0 와 docker push 3.37.128.155:5000/새ㅡimage:1.0 로 푸쉬해준다.
기존 dbimage:1.0와 tomimage:1.0는 지워주고, docker compose down 후 up -d 를 하여 도커 컴포즈 생성 한 후 curl localhost:8090/dbtest.jsp로 연결되는지 확인한다.