PostgreSQL은 open-source ORDBMS 이다. 현재 제품 개발 시 MySQL를 많이 사용되지만 PostgreSQL도 그것만의 매력이 있는건 사실이다.이글 통해 두 DB의 장단점을 어느정도 파악 할 수 있을것 같다.
Docker&Docker compose 설치
구글에서 검색하여 나온 블로그를 보면 Docker 설치에 관한 내용이 잘 정리되여 있다. 여기서 잘 정리된 블로그를 소개한다. 설치부터 설정 등등이 모두 포함되여 있다(CentOS 기준으로 작성되었음)
PostgreSQL 컨테이너 실행
PostgreSQL를 서비스로 올리려면 공식적으로 제공되는 docker image를 사용해야 한다.
아래 사이트로 방문하면 버전 별로 태그를 확인할 수 있다.
https://hub.docker.com/_/postgres
사용할 버전을 확인 했으면 아래 명령어를 사용하여 PostgreSQL 컨테이너를 실행하면 된다.
docker run --name postgres-service -d --restart unless-stopped \
-p 15432:5432 -e POSTGRES_PASSWORD=test1234 \
-v ${PWD}/data:/var/lib/postgresql/data postgres:13.3
-name: 컨테이너 이름을 지정한다
-d: background에서 실행하는 옵션
-p: 포트 매핑을 해준다. 앞에 host port를 쓰고 뒤에 컨테이너 service port를 적어준다.
-e: 환경 변수를 설정해 준다. 여기서는 PostgreSQL 비밀번호만 설정해 주었다.
-v: 볼룸 매핑을 해준다.
더 많은 옵션의 이 주소에서 확인해 보시길 바란다.
docker ps 명령으로 현재 실행되고 있는 컨테이너 상태를 확인 할 수 있다.
Docker-compose 사용
매번 위의 명령을 사용하여 서비스를 구동하면 사용되는 환경 변수나 옵션들이 달라질 수 있으니 구동에 관련된 내용을 yml파일로 설정할 수 있다. 아래는 PostgreSQL를 컨테이너롤 서비스를 할 수 있는 제일 심플한 샘플 파일이다.
version: '1.0'
services:
postgres:
image: postgres:13.3
container_name: postgres
environment:
- POSTGRES_USER=postgre
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=testDB
restart: always
ports:
- '25432:5432'
volumes:
- ~/docker_volume/postgresql:/var/lib/postgresql/data
https://valuefactory.tistory.com/497
https://devinlife.com/postgresql/run-postgresql-on-docker/
'DataBase' 카테고리의 다른 글
ORM 장단점 (0) | 2021.12.12 |
---|---|
Postgres Failover 방법 (0) | 2021.12.12 |
PostgreSQL 설치부터 이중화까지 (0) | 2021.12.12 |
MongoDB 기본적인 사용법 (0) | 2021.11.07 |
MongoDB 개념 및 docker로 서비스 (0) | 2021.11.07 |
Comment