ローカル Docker に Postgres 12 + pgadmin をインストールする方法 (Apple M1 をサポート)

ローカル Docker に Postgres 12 + pgadmin をインストールする方法 (Apple M1 をサポート)

導入

このプロジェクトでは最近、Posgres データベースを 9.6 から 12+ にアップグレードしました。移行テストを行うには、ローカルに複数のバージョンの Postgres をインストールする必要があります。最も便利な方法は、Docker を使用してインストールすることです。バージョンの競合の問題はなく、管理や削除も簡単です。

docker-compose や stack を使うのもお勧めです。簡単に言うと、データをローカルに保存できるので、再起動のたびにデータが失われることがなく、再利用できます。統合テストを実行する場合は、毎回新しい DB を開始できます。

次の docker-compose ファイルには、Postgres を使いやすくする pgAdmin も含まれています。お気に入りの DB ブラウザを使用することもできます。私は IDEA (ultimate) に付属するデータベース プラグインを使用します。

Intel CPUをサポート

しばらくMacOSで使用しましたが問題ありませんでした。

  • docker-compose.yml ファイルとして保存
  • ファイルパスでdocker-compose up -dを実行します。

例:

  • ユーザー名とパスワードは自由に設定できます
  • ボリュームはデータベースがローカルに保存されるパスです
  • ポート: デフォルトは 5432 です。通常は 15432 に変更します。プロジェクトが多く、10000 未満のポートは非​​常に混雑しています。
  • pgadminのメールアドレスとパスワードはページのログインパスワードです
  • pgadminのボリュームとポートはPostgresと同じです
バージョン: '3.5'

サービス:
 ポストグル:
 コンテナ名: pg12
 画像: postgres:12
 環境:
 POSTGRES_USER: pg12
 POSTGRES_パスワード: pg12
 PGD​​ATA: /data/postgres
 ボリューム:
 - postgres12:/Users/szhang/postgresql/pg12
 ポート:
 - 「5432:5432」
 ネットワーク:
 - 12ページ
 再起動: 停止しない限り

 pgadmin:
 コンテナ名: pgadmin12
 画像: dpage/pgadmin4
 環境:
 PGADMIN_DEFAULT_EMAIL: [email protected]
 PGADMIN_DEFAULT_PASSWORD: [email protected]
 ボリューム:
 - pgadmin12:/Users/szhang/postgresql/.pgadmin12
 ポート:
 - 「27777:80」
 ネットワーク:
 - 12ページ
 再起動: 停止しない限り

ネットワーク:
 12ページ:
 ドライバー: ブリッジ

ボリューム:
 postgres12:
 pgadmin12:

Apple M1のサポート

このバージョンの唯一の違いは、Postgres イメージが ARM バージョンであり、特に最新の Apple M1 チップを搭載したコンピューターをサポートしていることです。さらに、Apple M1 コンピューターは Docker を実行できますが、多くの Docker イメージにはまだ ARM バージョンがないため、現時点では M1 コンピューターを開発 (Docker が必要) に使用するのは便利ではありません。

バージョン: '3.5'

サービス:
 ポストグル:
 コンテナ名: pg12
 イメージ: arm64v8/postgres:12.6
 環境:
 POSTGRES_USER: pg12
 POSTGRES_パスワード: pg12
 PGD​​ATA: /data/postgres
 ボリューム:
 - postgres12:/Users/shubozhang/dev/postgresql/pg12
 ポート:
 - 「5432:5432」
 ネットワーク:
 -pg12
 再起動: 停止しない限り

 pgadmin:
 コンテナ名: pgadmin12
 画像: dpage/pgadmin4
 環境:
 PGADMIN_DEFAULT_EMAIL: [email protected]
 PGADMIN_DEFAULT_PASSWORD: [email protected]
 ボリューム:
 - pgadmin12:/Users/shubozhang/dev/postgresql/.pgadmin12
 ポート:
 - 「27777:80」
 ネットワーク:
 - 12ページ
 再起動: 停止しない限り

ネットワーク:
 12ページ:
 ドライバー: ブリッジ

ボリューム:
 postgres12:
 pgadmin12:

テスト

pgAdmin

docker-composeでメールアドレスとパスワードを使用してログインします

ユーザーインターフェース

インテリジェンス

ユーザー名、パスワード、ポートを使用して接続します。

ローカル Docker を使用した Postgres 12 + pgadmin (Apple M1 をサポート) のインストールに関するこの記事はこれで終わりです。Docker を使用した Postgres のインストールに関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Docker デプロイメント postgresql データベースについて
  • Docker で PostgreSQL を実行し、いくつかの接続ツールを推奨する
  • Docker が PostgreSQL を起動するときに複数のデータベースを作成するためのソリューション
  • Docker環境でPostgreSQLをアップグレードする詳細な手順
  • docker で PostgreSQL データベースをインストールして永続化する方法
  • dockerでPostgreSQLを実行する方法
  • docker 環境でのデータベース バックアップ (postgresql、mysql) のサンプル コード
  • docker をデプロイして postgres データベースにアクセスする方法

<<:  Vue-CLI3.xはプロジェクトをサーバーに自動的にデプロイします

>>:  MySQL binlog の使用方法の詳細な説明

推薦する

Linux システムの仮想ホストで Swoole Loader 拡張機能を有効にする方法

特記事項: Swoole 拡張機能のみがインストールされ、サーバーはホストにインストールされません。...

HTML で余分なテキストを省略記号に変換する方法

HTML で余分なテキストを省略記号として表示したい場合は、いくつかの方法があります。 1行テキスト...

MySQL 5.7 クラスタ構成手順

目次1. サーバーAのmy.cnfファイルを変更する2. サーバーBのmy.cnfファイルを変更する...

Vueカスタムディレクティブの詳細

目次1. 背景2. ローカルカスタム指示3. グローバルカスタム指示4.1 カスタムコマンドフック関...

Docker+daocloudはフロントエンドプロジェクトの自動構築とデプロイを実現します

自動プロジェクト展開は大企業やユニコーン企業でよく使用され、手動でプロジェクトを展開するよりも効率的...

Windows 10 で MySQL 8.0.12 の解凍バージョンをインストールして構成する方法 (グラフィック チュートリアル付き)

この記事では、MySQL 8.0.12 の解凍版のインストールと設定方法を記録し、皆様と共有します。...

Docker を使用して Spring Boot をデプロイする方法の例

ここでは主に、スタンドアロンのプログラムを生成できるspring-bootと、Mavenプラグインd...

Nginx をインストールして複数のドメイン名を設定する方法

Nginx のインストールCentOS 6.x yum にはデフォルトで nginx ソフトウェア ...

Linux ディスク クォータ管理のグラフィカルな例

ディスク クォータは、コンピューター内の指定されたディスクのストレージ制限です。つまり、管理者はユー...

MySQL サーバー 5.5 の接続失敗の解決策

mysqlに接続できない問題の解決方法を参考までに紹介します。具体的な内容は以下のとおりです。昨日は...

MySQL共通ストレージエンジンの機能と使用方法の詳細な説明

この記事では、一般的な MySQL ストレージ エンジンの機能と使用方法を例を使って説明します。ご参...

UbuntuでGRUBの起動時間を変更する

grubの起動時間を変更するためのオンライン検索は基本的に/etc/default/grubを変更す...

Linux での VMWare15.5 のインストールに関するチュートリアル

Linux に VMWare をインストールするには、公式 Web サイト https://www....

Bootstrap 3.0 の特殊効果の学習ノート(表示と非表示、フローティングの除去、閉じるボタンなど)

この記事の主な内容は次のとおりです。 1. 閉じるボタン2.キャレット3. フローティングを素早く設...

純粋なJSを使用してセカンダリメニュー効果を実現します

この記事の例では、セカンダリメニュー効果を実現するためのJSの具体的なコードを参考までに共有していま...