<aside> 💡
24일 실습에서는 도커를 통해 서버환경에 제가 임시로 배포하여 사용이 가능했으나, 도커 설치 후 간단한 도커 명령어를 배운다면 로컬 환경에서 직접 DB를 만들 수 있습니다.
이전 실습과 동일한 환경에서 스프링 프로젝트가 정상적으로 실행되도록 확인해주세요.
서버 설정 파트 yml은 각자의 비밀번호, 데이터베이스 환경에 따라 변경하셔도 됩니다!
사용한 명령어를 함께 정리해주세요. </aside>
>docker pull mysql
Using default tag: latest
latest: Pulling from library/mysql
...
>docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest c757d623b190 2 months ago 586MB
ports도 확인할 수 있다.
>docker run -d --name mysql-container -e MYSQL_ROOT_PASSWORD=(password) mysql
>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1912807588dd mysql "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp, 33060/tcp mysql-container
mysql-container에 대해 특별한 network연결이 없었음에도 연결된network가 있네용?
(→ 나중에 알아낸 사실> 이 bridge내트워크는 도커의 기본 네트워크 이였다!)
>docker network inspect bridge
[
{
"Name": "bridge",
"Id": "331a989c18dd44a1d9b776c3ab22228e8bac06865894eb89cad0e865e4130fad",
"Created": "2024-10-07T07:46:58.507668517Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16",
"Gateway": "172.17.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"1912807588dd297ed93ccfb463790a5b651dc57ff319da1f28186721dbb335da": {
"Name": "mysql-container",
"EndpointID": "b12d0024c10462a85de0d0032341e4c2a4913e97d1a5a6685cf25983a0193ed7",
"MacAddress": "02:42:ac:11:00:02",
"IPv4Address": "172.17.0.2/16",
"IPv6Address": ""
}
},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
]
이름확인
>docker exec -it (CONTAINER ID) /bin/bash
bash-5.1
# whoami
root
mysql DB 생성
mysql> create database myfirstDB;
Query OK, 1 row affected (0.02 sec)