Cài Đặt PostgreSQL Bằng Docker và Docker Compose

1. Giới Thiệu

PostgreSQL là một hệ quản trị cơ sở dữ liệu mạnh mẽ, được sử dụng rộng rãi trong các ứng dụng hiện đại. Sử dụng Docker giúp việc triển khai PostgreSQL trở nên nhanh chóng và dễ quản lý.

Trong bài viết này, chúng ta sẽ:

  • Cài đặt PostgreSQL bằng Docker.
  • Sử dụng Docker Compose để dễ dàng quản lý.
  • Mount dữ liệu để tránh mất dữ liệu khi container bị xóa.
  • Cài đặt pgAdmin để quản lý PostgreSQL trực quan.

2. Cài Đặt PostgreSQL Bằng Docker

2.1. Kéo Image PostgreSQL

Trước tiên, chúng ta cần tải image PostgreSQL từ Docker Hub:

docker pull postgres:latest

2.2. Chạy PostgreSQL Container

Sử dụng lệnh sau để chạy container PostgreSQL:

docker run -d --name postgres_container \
  -e POSTGRES_USER=admin \
  -e POSTGRES_PASSWORD=admin123 \
  -e POSTGRES_DB=mydatabase \
  -p 5432:5432 \
  -v pgdata:/var/lib/postgresql/data \
  postgres:latest

Giải thích:

  • -e POSTGRES_USER=admin: Tạo user quản trị.
  • -e POSTGRES_PASSWORD=admin123: Đặt mật khẩu.
  • -e POSTGRES_DB=mydatabase: Tạo database mặc định.
  • -v pgdata:/var/lib/postgresql/data: Lưu trữ dữ liệu trên volume.
  • -p 5432:5432: Mở cổng PostgreSQL để kết nối từ bên ngoài.

Kiểm tra container PostgreSQL đang chạy:

docker ps

3. Cài Đặt PostgreSQL Bằng Docker Compose

3.1. Tạo File docker-compose.yml

Tạo file docker-compose.yml với nội dung sau:

version: '3.8'

services:
  postgres:
    image: postgres:latest
    container_name: postgres_container
    restart: always
    environment:
      POSTGRES_USER: admin
      POSTGRES_PASSWORD: admin123
      POSTGRES_DB: mydatabase
    ports:
      - "5432:5432"
    volumes:
      - pgdata:/var/lib/postgresql/data

  pgadmin:
    image: dpage/pgadmin4
    container_name: pgadmin_container
    restart: always
    environment:
      PGADMIN_DEFAULT_EMAIL: admin@example.com
      PGADMIN_DEFAULT_PASSWORD: admin123
    ports:
      - "5050:80"
    depends_on:
      - postgres

volumes:
  pgdata:

3.2. Chạy Docker Compose

Chạy lệnh sau để khởi động PostgreSQL và pgAdmin:

docker-compose up -d

Kiểm tra container đang chạy:

docker-compose ps

4. Kết Nối PostgreSQL Bằng pgAdmin

4.1. Truy Cập pgAdmin

Mở trình duyệt và truy cập http://localhost:5050. Đăng nhập với thông tin:

  • Email: admin@example.com
  • Mật khẩu: admin123

4.2. Kết Nối PostgreSQL

  1. Chọn Add New Server.
  2. Tab General → Đặt tên server (VD: Postgres Local).
  3. Tab Connection:
    • Host: postgres
    • Port: 5432
    • Username: admin
    • Password: admin123
    • Save password: ✅
  4. Nhấn Save, bạn sẽ thấy danh sách database và có thể quản lý PostgreSQL trực quan.

5. Các Lệnh Hữu Ích

  • Kiểm tra logs PostgreSQL:

    docker logs postgres_container
  • Dừng container:

    docker-compose down
  • Xóa container và dữ liệu:

    docker-compose down -v

    6. Kết Luận

Qua bài viết này, bạn đã biết cách:

  • Cài đặt PostgreSQL bằng Docker và Docker Compose.
  • Mount dữ liệu để tránh mất thông tin.
  • Cài đặt pgAdmin để quản lý cơ sở dữ liệu dễ dàng.

Đây là một giải pháp tiện lợi giúp bạn triển khai PostgreSQL nhanh chóng trên mọi môi trường!

Article Thumbnail
Article Thumbnail
Datadog Webinar: Modernize AWS Logs at Scale
Chia sẻ bài viết:
Theo dõi
Thông báo của
0 Góp ý
Được bỏ phiếu nhiều nhất
Mới nhất Cũ nhất
Phản hồi nội tuyến
Xem tất cả bình luận