How to run postgreSQL with docker

How to run postgreSQL with docker

1. Install Docker.
Reference URL:

Docker Getting Started Installation Tutorial (Beginner Edition)

Install Docker on Linux (very simple installation method)

2. Pull the docker image file of postgreSQL: docker pull postgres:12.1

3. Create a docker volume named "dv_pgdata" (you can skip the manual creation and run the next step directly, docker will automatically create it): docker volume create dv_pgdata

4. Start the container and use -v to specify that the postgres data directory is mapped to the dv_pgdata created above: docker run --name my_postgres -v dv_pgdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=xxxxxx -p 5432:5432 -d postgres:12.1

5. Now check the existing docker volume: docker volume ls

6. View volume information:

[root@VM_0_6_centos _data]# docker inspect dv_pgdata
[
  {
    "CreatedAt": "2020-01-14T08:40:03+08:00",
    "Driver": "local",
    "Labels": {},
    "Mountpoint": "/var/lib/docker/volumes/dv_pgdata/_data",
    "Name": "dv_pgdata",
    "Options": {},
    "Scope": "local"
  }
]

7. On the host machine, you can also directly view the contents of the volume:

[root@VM_0_6_centos _data]# cd /var/lib/docker/volumes/dv_pgdata/_data
[root@VM_0_6_centos _data]# ll
total 132
drwx------ 19 polkitd ssh_keys 4096 Jan 14 08:40 .
drwxr-xr-x 3 root root 4096 Jan 14 08:33 ..
drwx------ 5 polkitd ssh_keys 4096 Jan 14 08:38 base
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 global
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_commit_ts
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_dynshmem
-rw------ 1 polkitd ssh_keys 4535 Jan 14 08:38 pg_hba.conf
-rw------ 1 polkitd ssh_keys 1636 Jan 14 08:38 pg_ident.conf
drwx------ 4 polkitd ssh_keys 4096 Jan 14 08:45 pg_logical
drwx------ 4 polkitd ssh_keys 4096 Jan 14 08:38 pg_multixact
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:40 pg_notify
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_replslot
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_serial
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_snapshots
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:40 pg_stat
drwx------ 2 polkitd ssh_keys 4096 Jan 14 16:44 pg_stat_tmp
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_subtrans
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_tblspc
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_twophase
-rw------ 1 polkitd ssh_keys 3 Jan 14 08:38 PG_VERSION
drwx------ 3 polkitd ssh_keys 4096 Jan 14 08:38 pg_wal
drwx------ 2 polkitd ssh_keys 4096 Jan 14 08:38 pg_xact
-rw------ 1 polkitd ssh_keys 88 Jan 14 08:38 postgresql.auto.conf
-rw------ 1 polkitd ssh_keys 26588 Jan 14 08:38 postgresql.conf
-rw------ 1 polkitd ssh_keys 36 Jan 14 08:40 postmaster.opts
-rw------ 1 polkitd ssh_keys 94 Jan 14 08:40 postmaster.pid

8. View postgresql:

[root@VM_0_6_centos ~]#docker exec -it 618 bash
root@618f1a4128ee:/# psql -U postgres

psql (12.1 (Debian 12.1-1.pgdg100+1))
Type "help" for help.

postgres=#

9. More often, we hope to use a graphical interface to manage and operate the database. We can deploy the pgadmin tool (for example, as shown below), and then access port 5080 of the host machine in the browser to open pgadmin.

docker pull dpage/pgadmin4:4.17
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:4.17

This is the end of this article about the steps to run postgreSQL with docker. For more information about running postgreSQL with docker, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • About Docker deployment postgresql database
  • Running PostgreSQL in Docker and recommending several connection tools
  • Solution for creating multiple databases when Docker starts PostgreSQL
  • How to install Postgres 12 + pgadmin in local Docker (support Apple M1)
  • Detailed steps to upgrade PostgreSQL in Docker environment
  • How to install and persist the postgresql database in docker
  • Database backup in docker environment (postgresql, mysql) example code
  • How to deploy docker to access postgres database

<<:  MySQL database implements OLTP benchmark test based on sysbench

>>:  JavaScript article will show you how to play with web forms

Recommend

An example of refactoring a jigsaw puzzle game using vue3

Preface It took two days to reconstruct a puzzle ...

Solution to mysql login warning problem

1. Introduction When we log in to MySQL, we often...

About VSCode formatting JS automatically adding or removing semicolons

introduction It is okay to add or not add a semic...

CSS3 realizes particle animation effect when matching kings

When coding, you will find that many things have ...

MySQL detailed explanation of isolation level operation process (cmd)

Read uncommitted example operation process - Read...

Detailed explanation of the solution to Tomcat's 404 error

The 404 problem occurs in the Tomcat test. The pr...

centos7.2 offline installation mysql5.7.18.tar.gz

Because of network isolation, MySQL cannot be ins...

Detailed explanation of Nginx forwarding socket port configuration

Common scenarios for Nginx forwarding socket port...

A brief analysis of how to use border and display attributes in CSS

Introduction to border properties border property...

Use of Vue filters and custom instructions

Table of contents Filters 01.What is 02. How to d...