欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker Compose安裝部署PostgreSQL數(shù)據(jù)庫的實現(xiàn)步驟

 更新時間:2024年12月16日 11:44:05   作者:宋發(fā)元  
本文主要介紹了使用DockerCompose在Linux服務器上部署PostgreSQL,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

以下是一個完整的 PostgreSQL Docker Compose 部署教程,包括配置和部署詳細步驟。本文將指導您如何在 Linux 服務器上使用 Docker Compose 來部署 PostgreSQL,并將數(shù)據(jù)持久化到指定路徑。

1. 環(huán)境準備

確保您的系統(tǒng)上已經(jīng)安裝了以下軟件:

驗證安裝是否成功:

docker --version
docker-compose --version

2. 創(chuàng)建所需的目錄

為了確保數(shù)據(jù)持久化存儲,先創(chuàng)建工作目錄和持久化數(shù)據(jù)目錄。

執(zhí)行以下命令:

# 創(chuàng)建工作目錄
mkdir -p /opt/postgresql

# 創(chuàng)建持久化目錄
mkdir -p /opt/docker-data/postgresql && chmod 777 /opt/docker-data/postgresql

說明

  • /opt/postgresql 是用于存放項目文件的工作目錄。
  • /opt/docker-data/postgresql 是持久化 PostgreSQL 數(shù)據(jù)的目錄,設置權限為 777 確保容器可以讀寫。

3. 創(chuàng)建 docker-compose.yml 文件

進入工作目錄 /opt/postgresql,然后創(chuàng)建 docker-compose.yml 文件:

cd /opt/postgresql
touch docker-compose.yml

編輯 docker-compose.yml 文件,內(nèi)容如下:

version: '3.8'

services:
  postgres:
    image: postgres:15                # 使用 PostgreSQL 15 鏡像
    container_name: postgres_db       # 容器名稱
    environment:
      POSTGRES_USER: root             # 設置用戶名為 'root'
      POSTGRES_PASSWORD: 123456       # 設置密碼為 '123456'
      POSTGRES_DB: demo               # 設置數(shù)據(jù)庫名為 'demo'
    ports:
      - "5433:5432"                   # 將容器的 5432 端口映射到主機的 5433 端口
    volumes:
      - /opt/docker-data/postgresql:/var/lib/postgresql/data  # 數(shù)據(jù)映射到主機指定路徑

volumes:
  postgres_data:

文件解釋

  • services: 定義了 PostgreSQL 服務。
    • image: 使用官方 PostgreSQL 15 鏡像。
    • container_name: 給容器命名為 postgres_db。
    • environment: 設置數(shù)據(jù)庫的環(huán)境變量,包括用戶名、密碼和默認數(shù)據(jù)庫名稱。
    • ports: 將容器的默認 PostgreSQL 端口 5432 映射到主機的 5433 端口。
    • volumes: 將容器的數(shù)據(jù)目錄 /var/lib/postgresql/data 映射到主機的 /opt/docker-data/postgresql,實現(xiàn)數(shù)據(jù)持久化。

4. 啟動 PostgreSQL 服務

在 docker-compose.yml 文件所在的目錄中,執(zhí)行以下命令來啟動服務:

docker-compose up -d

說明

  • -d 選項表示以“后臺模式”運行容器。
  • 此時,PostgreSQL 容器將啟動,數(shù)據(jù)將持久化到 /opt/docker-data/postgresql 目錄。

5. 驗證 PostgreSQL 部署

檢查容器狀態(tài):

docker-compose ps

您應該會看到類似如下的輸出,表示 PostgreSQL 容器正在運行:

   Name                 Command               State         Ports
-------------------------------------------------------------------------
postgres_db     docker-entrypoint.sh postgres   Up      0.0.0.0:5433->5432/tcp

登錄到 PostgreSQL 容器進行驗證:

docker exec -it postgres_db psql -U root -d demo

命令解釋

  • docker exec -it postgres_db:進入名為 postgres_db 的容器。
  • psql -U root -d demo:使用 root 用戶登錄到 demo 數(shù)據(jù)庫。

6. 連接 PostgreSQL 數(shù)據(jù)庫

您可以使用任意數(shù)據(jù)庫客戶端連接 PostgreSQL。連接參數(shù)如下:

  • 主機localhost 或 Docker 主機 IP
  • 端口5433
  • 用戶名root
  • 密碼123456
  • 數(shù)據(jù)庫demo

示例命令行連接:

psql -h localhost -p 5433 -U root -d demo

7. 停止和刪除 PostgreSQL 容器

如需停止和刪除容器,可以執(zhí)行以下命令:

docker-compose down

該命令將停止容器并刪除網(wǎng)絡配置,但不會刪除持久化的數(shù)據(jù)(數(shù)據(jù)保存在 /opt/docker-data/postgresql 目錄下)。

8. 備份與恢復數(shù)據(jù)

備份數(shù)據(jù)庫

您可以使用以下命令來備份數(shù)據(jù)庫:

docker exec -t postgres_db pg_dump -U root demo > /opt/docker-data/postgresql/backup.sql

恢復數(shù)據(jù)庫

如果您需要從備份中恢復數(shù)據(jù),可以執(zhí)行以下命令:

docker exec -i postgres_db psql -U root -d demo < /opt/docker-data/postgresql/backup.sql

結束語

通過以上步驟,您已經(jīng)成功使用 Docker Compose 部署了 PostgreSQL,并且數(shù)據(jù)已經(jīng)持久化到指定的路徑 /opt/docker-data/postgresql。這個部署方案方便了數(shù)據(jù)庫的管理和備份,適合在開發(fā)和生產(chǎn)環(huán)境中使用。

到此這篇關于Docker Compose安裝部署PostgreSQL數(shù)據(jù)庫的實現(xiàn)步驟的文章就介紹到這了,更多相關Docker Compose安裝部署PostgreSQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • windows下安裝docker的教程詳解

    windows下安裝docker的教程詳解

    這篇文章主要介紹了windows安裝docker的教程,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • 如何使用docker部署前端應用的方法步驟

    如何使用docker部署前端應用的方法步驟

    這篇文章主要介紹了如何使用docker部署前端應用的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • Docker 教程之私有倉庫詳解

    Docker 教程之私有倉庫詳解

    這篇文章主要介紹了Docker 教程之私有倉庫詳解的相關資料,需要的朋友可以參考下
    2016-12-12
  • Docker四種網(wǎng)絡模式演示及連通性測試

    Docker四種網(wǎng)絡模式演示及連通性測試

    這篇文章主要為大家介紹了Docker四種網(wǎng)絡模式演示及連通性測試,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • 使用Docker開發(fā)python Web 應用

    使用Docker開發(fā)python Web 應用

    本文給大家詳細講解了如何使用Docker開發(fā)python應用,特別是WEB應用的步驟,Docker本質(zhì)上提供了非常輕量化的VMs,我們可以使用其創(chuàng)建一個高標準隔離并能大大減少失配的開發(fā)和產(chǎn)品環(huán)境。
    2016-10-10
  • docker容器間的互聯(lián)問題

    docker容器間的互聯(lián)問題

    這篇文章主要介紹了docker容器間的互聯(lián)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 使用Docker搭建MQTT服務器的過程詳解

    使用Docker搭建MQTT服務器的過程詳解

    這篇文章主要介紹了使用Docker搭建MQTT服務器的過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • docker解析DNS失敗問題

    docker解析DNS失敗問題

    這篇文章主要介紹了docker解析DNS失敗問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • docker搭建dnsmasq服務的實現(xiàn)

    docker搭建dnsmasq服務的實現(xiàn)

    本文將指導讀者如何使用Docker搭建DNSmasq服務,通過簡單的步驟和詳細的說明,幫助讀者快速在Docker環(huán)境中部署DNSmasq,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • 借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺的詳細教程

    借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺的詳細教程

    這篇文章主要介紹了借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01

最新評論