Dockerでデータベース「PostgreSQL」のイメージの起動までをまとめました。
イメージの取得から起動までも簡単にできるので毎回インストールするよりも簡単に構築をすることができますので試してみてください。
DockerコンテナでPostgreSQLを起動する手順
公式のDockerイメージとコンテナの起動手順の最新のコマンド等は以下のページから確認できます。
https://hub.docker.com/_/postgres/
また、2020年3月時点での「PostgreSQL」のイメージとファイルリンクは以下となっています。
- 12.2, 12, latest
- 12.2-alpine, 12-alpine, alpine
- 11.7, 11
- 11.7-alpine, 11-alpine
- 10.12, 10
- 10.12-alpine, 10-alpine
- 9.6.17, 9.6, 9
- 9.6.17-alpine, 9.6-alpine, 9-alpine
- 9.5.21, 9.5
- 9.5.21-alpine, 9.5-alpine
Dockerコンテナで「postgres」インスタンスを開始
以下のコマンドで「PostgresSQL」のコンテナを起動します。
今回は最新のバージョンでインストールします。
最新のイメージで起動
~ $ docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres
バージョン指定でイメージを起動する場合
バージョンを指定して「PostgreSQL」をインストールしたい場合は以下のコマンドを実行します。
※以下はバージョン11.7で起動した例となります。
~ $ docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres:11.7
PostgreSQLの起動確認
上記コマンドで、正常に「PostgreSQL」が起動したかを確認します。
PostgreSQLのイメージがダウンロードされていることを以下コマンドで確認します。
~ $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE postgres latest 73119b8892f9 11 days ago 314MB django latest 9108c69607a8 3 weeks ago 972MB splunk/splunk latest d92ffcc2e7e5 4 weeks ago 1.74GB python 3 efdecc2e377a 5 weeks ago 933MB centos centos7 5e35e350aded 4 months ago 203MB ~ $
「docker ps」コマンドで「PostgreSQL」のコンテナが起動していることを確認します。
~ $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cd5c8fdbe70a postgres "docker-entrypoint.s…" 38 minutes ago Up 37 minutes 5432/tcp some-postgres ~ $
Docker Composeの設定ファイルの作成
Docker Composeの設定ファイルを作成し、データベースを起動します。
PostgreSQLデータベースを起動させるための「stack.yml」を作成します。
今回はテストとして、Macのデスクトップ上にファイルを作成します。
※stack.yml
# Use postgres/example user/password credentials version: '3.1' services: db: image: postgres restart: always environment: POSTGRES_PASSWORD: example adminer: image: adminer restart: always ports: - 8080:8080
上記で設定した内容は以下となります。
- アクセス先URL: localhost:8080
- サーバ: db
- ユーザー名: postgres
- パスワード: example
ファイル名を指定して「PostgreSQL」を実行
stack.ymlを作成後は、作成したフォルダで以下のコマンドを実行します。
Desktop $ docker-compose -f stack.yml up Starting desktop_db_1 ... done Starting desktop_adminer_1 ... done
終了する場合は「control」+「c」キーで終了します。
バックグラウンドでコンテナを実行
バックグラウンドで実行する場合は以下のコマンドを実行します。
Desktop $ docker-compose -f stack.yml up -d Starting desktop_db_1 ... done Starting desktop_adminer_1 ... done
終了する場合は以下のコマンドでデータベースを停止します。
Desktop $ docker stop desktop_adminer_1 desktop_adminer_1 Desktop $ docker stop desktop_db_1 desktop_db_1
Dockerコンテナで起動した「PostgreSQL」へアクセス
上記で「PostgreSQL」が起動したら「http://localhost:8080」へアクセスします。
正常にアクセスができれば以下のようなページにアクセスできます。
それぞれ以下の情報を入力し、ログインを実施します。
- データベースの種類: PostgreSQL
- サーバ: db
- ユーザー名: postgres
- パスワード: example
※永続的にログインする場合はチェックボックスをクリックしてログインを実施します。
正常に接続ができると以下のページが表示されます。
Dockerコンテナ上で「PostgreSQL」の起動と接続までは以上となります。
Dockerを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す