본문 바로가기
DB/Postgresql

Postgresql 컨테이너

by fabxoe 2019. 9. 11.
<dependency>
   <groupId>org.postgresql</groupId>
   <artifactId>postgresql</artifactId>
</dependency>

의존성

 

 

docker run -d -p 5430:5432 --name postgres_boot -it --rm -v pgdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=pass -e POSTGRES_USER=sungmin -e POSTGRES_DB=springdata postgres

컨테이너 생성(경량 리눅스와 그안에  postgres를 가진형태)

 

docker volume create pgdata
docker run -itd -v pgdata:/var/lib/postgresql/data postgres

데이터를 계속해서 유지해야 한다면 Docker 볼륨옵션을 이용해서 한번더 run 시키자

 

docker exec -it postgres_boot bash

인터렉티브 모드

 

su - postgres

postgres사용자로 전환명시(postgreSQL의 보안상 이유라고 한다.)

 

psql --username sungmin --dbname springdata

 

<postgreSQL 명령어들>

\l         데이터베이스 리스트 보기

\dt       테이블 보기 

 

-----------------------------

-방법1(볼륨생성후 한번에 설정)

docker volume create pgd docker run -d -p 5432:5432 --name pgs -it --rm -v pgd:/var/lib/postgresql/data -e POSTGRES_PASSWORD=pass POSTGRES_USER=sungmin -e POSTGRES_DB=springdata postgres

 

-방법2(먼저 admin 계정 비번 셋팅후 볼륨생성,설정)

docker run -d -p 5432:5432 --name pgs -e POSTGRES_PASSWORD=pass -e POSTGRES_USER=sungmin -e POSTGRES_DB=springdata postgres

 

docker volume create pgd

 

docker run -it --rm -v pgd:/var/lib/postgresql/data postgres

 

 

docker run \
-e POSTGRES_USER=sungmin \
-e POSTGRES_PASSWORD=pass \
-e PGDATA=/pgdata \
--volume /home/aiops/postgres/data:/data \
-e POSTGRES_INITDB_ARGS="--data-checksums -E utf8 --no-locale" \
--name pgf \
-p 5432:5432 \
postgres:9.6.14

댓글