본문 바로가기
운영체제(OS)/Docker

Postgres 18.3 user 생성 (기본 postgres ID 유지)

by JLearn 2026. 3. 20.

docker-compose.dev.yml 수정

POSTGRES_USER를 postgres로 고정하고 dev_user는 별도로 생성합니다.

( POSTGRES_USER에 설정된 ID는 슈퍼유저 권한을 갖으며 기본 postgres 관리자ID는 등록되지 않습니다.)


초기화 스크립트

sudo mkdir -p /opt/postgres/dev/init
sudo tee /opt/postgres/dev/init/01-init-dev-user.sql <<'EOF'
-- dev_user 생성
CREATE USER dev_user WITH PASSWORD 'dev_password_change_me';

-- devdb 소유권 부여
GRANT ALL PRIVILEGES ON DATABASE devdb TO dev_user;

-- 스키마 권한 부여
\c devdb
GRANT ALL ON SCHEMA public TO dev_user;
EOF

sudo chown -R 999:999 /opt/postgres/dev/init
sudo chmod 644 /opt/postgres/dev/init/01-init-dev-user.sql

적용

# pgdata를 비우고 재초기화해야 적용됨
docker compose -f docker-compose.dev.yml down
sudo rm -rf /data/postgres/dev/pgdata/*
docker compose -f docker-compose.dev.yml up -d

댓글