baicai

白菜

一个勤奋的代码搬运工!

DockerでpostgreSQLを実行する

簡単な手順#

  1. Docker をインストールし、Docker のインストールと基本的な使用方法を参照するか、百度で解決方法を検索してください。

  2. PostgreSQL の Docker イメージを取得します:

    docker pull postgres
  1. Docker ボリュームを作成し、名前を「dv_pgdata」とします(実際には手動で作成する必要はありません。次のステップに進んでも Docker が自動的に作成します):
    docker volume create dv_pgdata
  1. コンテナを起動し、-v オプションを使用して postgres のデータディレクトリを作成した dv_pgdata にマッピングします:
docker run --name my_postgres -v dv_pgdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=xxxxxx -p 5432:5432 -d postgres
  1. この時点で既存の Docker ボリュームを確認します:
docker volume ls
  1. ボリュームの情報を表示します:
cn2d6@navxin-desktop:~$ docker inspect dv_pgdata
  1. ホストマシン上で、ボリュームの内容を直接表示することもできます:
cn2d6@navxin-desktop:~$ cd /var/lib/docker/volumes/dv_pgdata/_data
cn2d6@navxin-desktop:~$ ll
  1. PostgreSQL を確認します:
cn2d6@navxin-desktop:~$docker exec -it 618 bash
root@618f1a4128ee:/# psql -U postgres -d postgres -p 5432 -h 127.0.0.1
  1. より多くの場合、データベースを管理および操作するためにグラフィカルユーザインターフェースを使用したい場合は、pgadmin ツールをデプロイすることができます(以下の例)。その後、ブラウザでホストマシンの 5080 ポートにアクセスすると、pgadmin が開きます。
docker pull dpage/pgadmin4
docker run --name pgadmin -p 5080:80 \
    -e '[email protected]' \
    -e 'PGADMIN_DEFAULT_PASSWORD=xxxxxx' \
    -e 'PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION=True' \
    -e 'PGADMIN_CONFIG_LOGIN_BANNER="Authorised users only!"' \
    -e 'PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=10' \
    -d dpage/pgadmin4

docker-compose を使用して postgresql と pgAdmin4 をデプロイする#

準備手順#

docker-compose をインストールします

    apt install docker-compose

postgres と pgAdmin4 のイメージを pull していることを確認します。まだ pull していない場合は、以下を実行します:

    docker pull postgres
    docker pull dpage/pgadmin4

設定内容#

次に、任意のディレクトリで docker-compose.yml というファイルを作成します:

    touch ./docker-compose.yml

以下の内容を追加します:

    # postgres/exampleのユーザー/パスワードの資格情報を使用します
    # https://hub.docker.com/_/postgres?tab=description
    # 現在のディレクトリで実行:sudo docker-compose up -d
    # 実行を停止する場合は、現在のディレクトリで実行:sudo docker-compose down
    # dockerルーティングアドレスの確認: sudo docker inspect postgres_baicai
    # sudo docker kill $(sudo docker ps -aq)
    # sudo docker rm $(sudo docker ps -aq)
    version: '3.1'

    services:

    db:
        image: postgres
        restart: always
        privileged: true
        container_name: postgres_baicai
        ports:
        - 5432:5432
        environment:
        POSTGRES_PASSWORD: あなたのパスワード
        PGDATA: /var/lib/postgresql/data/pgdata
        volumes:
        - /navxin/kn1/baicai_docker/baicai_postgres/pg_data:/var/lib/postgresql/data
        # - pgdata:/var/lib/postgresql/data

    pgadmin4:
        image: dpage/pgadmin4
        restart: always
        container_name: pgadmin_baicai
        ports:
        - 5080:80
        environment:
        PGADMIN_DEFAULT_EMAIL: "[email protected]"
        PGADMIN_DEFAULT_PASSWORD: あなたのパスワード

    # volumes:
    #   pgdata:

デプロイ#

現在のディレクトリで以下を実行します:

    docker-compose up -d

実行を停止する場合は、現在のディレクトリで以下を実行します:

    docker-compose down

接続手順

ブラウザを開き、localhost:5080 を入力し、pgAdmin4 にログインした後、新しいサーバーを追加します。特に注意する点として、接続アドレスの IP には docker ルーティングアドレスを入力し、ポートには 5432 を入力します。
docker ルーティングアドレスの確認方法

    docker inspect postgres_baicai

出力内容から Gateway を見つけ、それに対応するアドレスが docker ルーティングアドレスです。

さらに参考:#

Docker のインストールと基本的な使用方法
postgres
dpage/pgadmin4

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。