AWS EC2와 RDS를 사용해서 내 프로젝트의 DB Server를 개설하려 했으나 탄력적 IP에 대한 비용과 RDB Server를 Public으로 보려면 비용이 발생하기에(동일한 가용역역에서는 비용이 발생하지 않는다) 간단한 프로젝트를 배포하는 과정에서 서버를 배포하면서 동시에 MySQL서버도 개설해주었다.
간단히 Docker 명령어 옵션들에 대해 설명만 남겨두겠다.
1. MySQL 이미지 가져오기
pull [저장소/이미지 이름:태그명] or [이미지 이름]
이미지 이름만 적게 되면 공식 저장소에서 이미지 이름을 가져오게 된다. docker.io/library/mysql로 해석하게 되는 것이다.
docker pull mysql
2. MySQL 이미지 확인
docker images
3. MySQL 컨테이너화
run : docker 이미지를 컨테이너로 실행 시킴
--name : 컨테이너의 이름을 명시, 명시안하게 되면 랜던한 이름이 생겨 인식하기 힘들다.
-e : 환경변수 설정, MYSQL_ROOT_PASSWROD=내가 지정할 비밀번호 << 내 프로젝트의 yml파일에서 설정한 비밀번호와 동일해야 한다.
-d : daemon으로 백그라운드로 해당 컨테이너를 실행시키는 것이다. 만약 직접 상호작용하고 싶다면 -it를 사용하면 된다.
-p : [내부 포트]:[노출할 포트] 양식으로 지정해줄 수 있다. mySQL의 표준포트인 3306을 사용해준다.
mysql:latest : mysql의 가장 최신 이미지를 가져오는 태그를 포함한 명시이다.
docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=<password> -d -p 3306:3306 mysql:latest
4. docker의 실행 확인
만약 로컬에서 데스크탑을 사용하고 있다면 직접 들어가서도 확인이 가능하다.
docker ps -a
아래와 같이 Up상태로 계속 지속된다면 잘 실행된 것이다.
STATUS PORTS NAMES
51c3500689a2 leesunro/myselectshop:test "java -jar -Dspring.…" 7 hours ago Up 7 hours 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp myselectshop
0c9757d807c1 mysql:latest "docker-entrypoint.s…" 11 hours ago Up 10 hours 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql
'AWS' 카테고리의 다른 글
[Git Actions / Docker ] SpringBoot CI/CD 파이프라인 개설하기 (1) | 2025.02.06 |
---|---|
[EC2 / Docker 설치하기] Docker ubuntu환경에서 설치하는 법 (0) | 2025.02.05 |
[AWS / 문제 해결 추가] 매우 간편한 AWS EC2 Linux Docker설치 (0) | 2024.08.12 |
[AWS / 접근 오류] Disconnected-No-supported-authentication-methods-available-server-sent-publickeygssapi-keyexgssapi-with-mic (0) | 2024.08.12 |
[AWS / 사진첨부] 탄력적 IP가 무엇이고 어떻게 설정하지? (0) | 2024.08.02 |