반응형
도커 컨테이너로 PostgreSQL을 구성하는 방법
컨테이너 작업 디렉토리 생성
mkdir -p /docker-container/docker-postgres
cd /docker-container/docker-postgres
docker-compose.yaml 생성
vim docker-compose.yaml
services:
postgres:
image: postgres:17.5
container_name: postgres
restart: unless-stopped
environment:
TZ: Asia/Seoul
POSTGRES_DB: mydatabase
POSTGRES_USER: myuser
POSTGRES_PASSWORD: mypassword
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U myuser -d mydatabase --quiet"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data:
name: postgres_data
컨테이너 실행
docker compose up -d
PostgreSQL 접속 예시
docker compose exec postgres psql -U myuser -d mydatabase
psql (17.5 (Debian 17.5-1.pgdg120+1))
Type "help" for help.
mydatabase=#
- PostgreSQL 버전 확인
SELECT version();
-----------------------------------------------------------------------------------------------------
PostgreSQL 17.5 (Debian 17.5-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
(1 row)
컨테이너 로그
docker compose logs -f postgres
컨테이너 중지 및 삭제
docker compose down
728x90
PostgreSQL 기본 사용법
사용자 및 데이터베이스 생성
CREATE USER myuser WITH PASSWORD 'mypassword';
CREATE DATABASE mydatabase OWNER myuser;
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;
셸 종료
\q
PostgreSQL 컨테이너
- DB 데이터 디렉토리를 로컬 디렉토리(./data)로 설정
- 계정, 비밀번호, DB 이름 등 환경 변수는 .env 파일로 분리
컨테이너 작업 디렉토리 이동
cd /docker-container/docker-postgres
DB 데이터 디렉토리 생성
mkdir -p data
.env 파일 생성
vim .env
POSTGRES_DB=mydatabase
POSTGRES_USER=myuser
POSTGRES_PASSWORD=mypassword
docker-compose.yaml 편집
services:
postgres:
image: postgres:17.5
container_name: postgres
restart: unless-stopped
env_file:
- .env
environment:
TZ: Asia/Seoul
volumes:
- ./data:/var/lib/postgresql/data
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $POSTGRES_USER -d $POSTGRES_DB --quiet"]
interval: 10s
timeout: 5s
retries: 5
컨테이너 실행
docker compose up -d
반응형
'리눅스' 카테고리의 다른 글
PostgreSQL 로그 설정 및 System Statistics 확장 활성화하는 방법 (0) | 2025.07.15 |
---|---|
CentOS 7에서 PostgreSQL을 설치하는 방법 (0) | 2025.07.15 |
우분투 24.04에서 PostgreSQL을 설치하는 방법 (0) | 2025.07.15 |
우분투 24.04에 node와 npm을 설치하는 방법 (1) | 2025.07.10 |
PHP Opcache 오류 로그 설정 방법 (0) | 2025.07.07 |