-
#3. Rocky Linux 9 - Docker에 PostgreSQL 설치 및 설정 방법개발노트/Linux 2025. 2. 7. 15:44반응형
📌 1. PostgreSQL 컨테이너 실행
🔹 1-1. PostgreSQL 최신 버전의 Docker 이미지 다운로드
docker pull postgres:latest
✅ 버전 지정 가능
- 특정 버전 예:
docker pull postgres:14
🔹 1-2. PostgreSQL 컨테이너 실행
docker run -d \ --name my-postgres \ -e POSTGRES_USER=admin \ -e POSTGRES_PASSWORD=admin123 \ -e POSTGRES_DB=mydatabase \ -p 5432:5432 \ -v postgres_data:/var/lib/postgresql/data \ postgres:latest
✅ 설명
-d
: 백그라운드 실행--name my-postgres
: 컨테이너 이름-e POSTGRES_USER=admin
: DB 사용자 계정-e POSTGRES_PASSWORD=admin123
: 사용자 비밀번호-e POSTGRES_DB=mydatabase
: 기본 생성할 데이터베이스-p 5432:5432
: 로컬 포트 5432 → 컨테이너 포트 5432-v postgres_data:/var/lib/postgresql/data
: 데이터를 영구 보관
📌 2. PostgreSQL 컨테이너 설정 및 접속
🔹 2-1. 컨테이너 목록 확인
docker ps
✅ 실행 중인 컨테이너 확인
🔹 2-2. 컨테이너 내부로 접속
docker exec -it my-postgres psql -U admin -d mydatabase
✅ PostgreSQL 프롬프트 (
psql
) 실행됨
📌 3. PostgreSQL 기본 설정
🔹 3-1. 데이터베이스 목록 확인
\l
🔹 3-2. 새로운 사용자 및 데이터베이스 생성
CREATE USER myuser WITH PASSWORD 'mypassword'; CREATE DATABASE mydb OWNER myuser; GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
🔹 3-3. 테이블 생성 및 데이터 삽입
CREATE TABLE users ( id SERIAL PRIMARY KEY, name VARCHAR(50), email VARCHAR(100) UNIQUE ); INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com'); SELECT * FROM users;
🔹 3-4. psql 종료
\q
📌 4. PostgreSQL 컨테이너 자동 실행 설정
PostgreSQL 컨테이너를 서버 재부팅 후에도 자동 실행되도록 설정
docker update --restart always my-postgres
📌 5. PostgreSQL 컨테이너 상태 및 로그 확인
🔹 5-1. 컨테이너 상태 확인
docker ps -a
✅
my-postgres
컨테이너가 실행 중인지 확인🔹 5-2. 컨테이너 로그 확인
docker logs my-postgres
📌 6. PostgreSQL 컨테이너 중지 및 삭제
🔹 6-1. 컨테이너 중지
docker stop my-postgres
🔹 6-2. 컨테이너 삭제
docker rm my-postgres
🔹 6-3. Docker 볼륨 삭제 (데이터까지 삭제됨)
docker volume rm postgres_data
📌 📌 최종 정리
작업 명령어 PostgreSQL 이미지 다운로드 docker pull postgres:latest
PostgreSQL 컨테이너 실행 docker run -d --name my-postgres -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin123 -e POSTGRES_DB=mydatabase -p 5432:5432 -v postgres_data:/var/lib/postgresql/data postgres:latest
PostgreSQL 컨테이너 접속 docker exec -it my-postgres psql -U admin -d mydatabase
DB 사용자 생성 CREATE USER myuser WITH PASSWORD 'mypassword';
DB 자동 실행 설정 docker update --restart always my-postgres
컨테이너 중지 및 삭제 docker stop my-postgres && docker rm my-postgres
반응형'개발노트 > Linux' 카테고리의 다른 글
#1. Rocky Linux 9 - dnf localinstall 실행하기 (오프라인 환경) (0) 2025.02.04 #2. Rocky Linux 9 - Docker 설치하기 (확인 편) (0) 2025.02.03 #1. Rocky Linux 9 - Docker 설치하기 (0) 2025.02.03 #3. Rocky Linux 9 - Oracle JDK 8 설치 (1) 2025.02.03 #2. Rocky Linux 9 - 여러 버전의 Java를 관리하는 방법 (alternatives) (0) 2025.02.03 - 특정 버전 예: