๐ฌ MySQL
๐งฑ ์ปจํ
์ด๋ ์คํ
๐ ์ค๋ช
docker run์ MySQL ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ปจํ
์ด๋๋ฅผ ์์ฑํ๊ณ ์คํํ๋ค.
MySQL์ ์คํ ์ ๋ฐ๋์ ๋ฃจํธ ๋น๋ฐ๋ฒํธ ์ค์ ์ด ํ์ํ๋ค.
EX)
1
2
3
4
5
6
| docker run --name mysql-container \
-e MYSQL_ROOT_PASSWORD=mysecretpw \
-d \
-p 3306:3306 \
-v mysql-data:/var/lib/mysql \
mysql:latest
|
- 3306:3306 โ ๋ก์ปฌ์์ MySQL ์ ์ ๊ฐ๋ฅ
- /var/lib/mysql โ ์ค์ DB ๋ฐ์ดํฐ ์ ์ฅ ์์น
- v ์ต์
์์ผ๋ฉด ์ปจํ
์ด๋ ์ญ์ ์ ๋ฐ์ดํฐ๋ ์ญ์ ๋จ
๐ป ํฐ๋ฏธ๋ ์ ์ ๋ฐ ๋ก๊ทธ์ธ
๐ ์ค๋ช
docker exec๋ก ์คํ ์ค์ธ ์ปจํ
์ด๋ ๋ด๋ถ์์ MySQL ํด๋ผ์ด์ธํธ๋ฅผ ์คํํ๋ค.
EX)
1
| docker exec -it mysql-container mysql -u root -p
|
- it โ ํฐ๋ฏธ๋ ์ธํฐ๋ํฐ๋ธ ๋ชจ๋
- p โ ๋น๋ฐ๋ฒํธ ์
๋ ฅ ์๊ตฌ
๐ Bash๋ก ์ปจํ
์ด๋ ๋ด๋ถ ์ง์
(๋๋ฒ๊น
)
1
| docker exec -it mysql-container bash
|
๐งพ ๊ธฐ๋ณธ SQL ๋ช
๋ น์ด
1
2
3
4
| SHOW DATABASES;
CREATE DATABASE testdb;
USE testdb;
SHOW TABLES;
|
๐ ๋ก๊ทธ ํ์ธ (์ค์)
1
2
| docker logs mysql-container
docker logs -f mysql-container
|
๐ PostgreSQL
๐งฑ ์ปจํ
์ด๋ ์คํ
๐ ์ค๋ช
PostgreSQL์ ๊ธฐ๋ณธ ๊ณ์ ์ด postgres์ด๋ฉฐ, ๋น๋ฐ๋ฒํธ ์ค์ ์ด ํ์์ด๋ค.
EX)
1
2
3
4
5
6
| docker run --name postgres-container \
-e POSTGRES_PASSWORD=mysecretpw \
-d \
-p 5432:5432 \
-v postgres-data:/var/lib/postgresql/data \
postgres:latest
|
- 5432 โ PostgreSQL ๊ธฐ๋ณธ ํฌํธ
- /var/lib/postgresql/data โ ๋ฐ์ดํฐ ์ ์ฅ ์์น
๐ป ํฐ๋ฏธ๋ ์ ์
1
| docker exec -it postgres-container psql -U postgres
|
๐งพ psql ๋ฉํ ๋ช
๋ น์ด
1
2
3
4
| \l -- ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชฉ๋ก
\c testdb -- DB ์ ์
\dt -- ํ
์ด๋ธ ๋ชฉ๋ก
\q -- ์ข
๋ฃ
|
๐ ๋ก๊ทธ ํ์ธ
1
2
| docker logs postgres-container
docker logs -f postgres-container
|
๐ฅ Redis
๐งฑ ์ปจํ
์ด๋ ์คํ
๐ ์ค๋ช
Redis๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋น๋ฐ๋ฒํธ ์์ด ๋น ๋ฅด๊ฒ ์คํ ๊ฐ๋ฅํ ์ธ๋ฉ๋ชจ๋ฆฌ DB์ด๋ค.
EX)
1
2
3
4
| docker run --name redis-container \
-d \
-p 6379:6379 \
redis:latest
|
- 6379 โ Redis ๊ธฐ๋ณธ ํฌํธ
- ๋ณ๋ ์ค์ ์์ด ๋ฐ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
๐ป ํฐ๋ฏธ๋ ์ ์
1
| docker exec -it redis-container redis-cli
|
๐งพ ๊ธฐ๋ณธ ๋ช
๋ น์ด
1
2
3
4
| SET mykey "Hello, Redis!"
GET mykey
KEYS *
DEL mykey
|
๐ ๋ก๊ทธ ํ์ธ
1
2
| docker logs redis-container
docker logs -f redis-container
|
๐ณ ๊ณตํต Docker ๊ด๋ฆฌ ๋ช
๋ น์ด
๐ ์ปจํ
์ด๋ ์ํ ํ์ธ
1
2
| docker ps # ์คํ ์ค
docker ps -a # ์ ์ฒด (์ข
๋ฃ ํฌํจ)
|
๐ ์ปจํ
์ด๋ ์ ์ด
1
2
3
| docker stop mysql-container
docker start mysql-container
docker restart mysql-container
|
๐ ์ปจํ
์ด๋ ์ญ์
1
2
| docker rm mysql-container
docker rm -f mysql-container # ๊ฐ์ ์ญ์
|
๐ ์ปจํ
์ด๋ ๋ด๋ถ ์ ์
1
| docker exec -it mysql-container bash
|
๐ ๋ก๊ทธ ํ์ธ
1
2
| docker logs mysql-container
docker logs -f mysql-container
|
๐ก ํต์ฌ ๊ฐ๋
์ ๋ฆฌ
๐ Docker ํ๋ฆ
1
| ์ด๋ฏธ์ง โ ์ปจํ
์ด๋ ์์ฑ(run) โ ์คํ โ ์ ์(exec)
|
๐ ํฌํธ ํฌ์๋ฉ
๐ ๋ก์ปฌ 3307 โ ์ปจํ
์ด๋ 3306 ์ฐ๊ฒฐ