개발/Docker
postgres
LukeHan1128
2020. 12. 21. 20:00
반응형
도커 이미지 다운
# pull postgres docker image
docker pull postgres
admin 비밀번호 설정
# set admin password
docker run -d -p 5432:5432 --name pgsql -e POSTGRES_PASSWORD=exitem0* postgres
데이터 유지 설정
# set not remove data option
docker volume create pgdata
docker run -d -p 5432:5432 --name pgsql -it --rm -v pgdata:/var/lib/postgresql/data postgres
컨테이너에 접속 후 설정
# set option after connection postgres
docker exec -it pgsql bash
root@cb9222b1f718:/# psql -U postgres
psql (10.3 (Debian 10.3-1.pgdg90+1))
Type "help" for help.
postgres=# CREATE DATABASE mytestdb;
CREATE DATABASE
postgres=#\q
기본 이미지에서 추가 초기화 작업을 진행 - 사용자와 데이터베이스 추가(X)
root@hamonikr# vi /docker-entrypoint-initdb.d/init-user-db.sh
#!/bin/bash
set -e
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER docker;
CREATE DATABASE docker;
GRANT ALL PRIVILEGES ON DATABASE docker TO docker;
EOSQL
반응형