Přístavní dělník

Nastavte server PostgreSQL a pgAdmin pomocí Dockeru

Nastavte server PostgreSQL a pgAdmin pomocí Dockeru
V tomto článku vám ukážu, jak používat Docker Compose k vytvoření kontejneru PostgreSQL a přístupu k němu pomocí pgAdmin 4, webového rozhraní PostgreSQL pro správu. Ukážu vám také, jak přistupovat k databázovému serveru PostgreSQL spuštěnému v kontejneru Docker z DataGrip IDE. Pojďme tedy začít.

Požadavky:

Abyste mohli postupovat podle tohoto článku, musíte mít ve svém počítači nainstalovaný Docker. LinuxHint obsahuje mnoho článků, které můžete použít k instalaci Dockeru na požadovanou distribuci Linuxu, pokud ji ještě nemáte nainstalovanou. Nezapomeňte tedy zkontrolovat LinuxHint.com v případě, že máte potíže s instalací Dockeru.

Instalace Docker Compose:

Binární soubor Docker Compose si můžete stáhnout velmi snadno pomocí následujícího příkazu:

$ sudo curl -L "https: // github.com / docker / compose / releases / download / 1.24.1 /
docker-compose - $ (uname -s) - $ (uname -m) "-o / usr / local / bin / docker-compose

POZNÁMKA: kučera nemusí být nainstalován na vaší distribuci Linuxu. V takovém případě můžete curl nainstalovat pomocí následujícího příkazu:

Ubuntu / Debian / Linux Mint:

$ sudo apt install curl -y

CentOS / RHEL / Fedora:

$ sudo dnf install curl -y

Jednou docker-compose binární soubor je stažen, spusťte následující příkaz:

$ sudo chmod + x / usr / local / bin / docker-compose

Nyní zkontrolujte, zda docker-compose příkaz funguje následovně:

$ docker-compose verze

Mělo by vytisknout informace o verzi, jak je znázorněno na následujícím obrázku.

Nastavení Docker Compose pro projekt:

Nyní vytvořte adresář projektu (řekněme ~ / docker / pgdev) jak následuje:

$ mkdir -p ~ / docker / pgdev

Nyní přejděte do adresáře projektu ~ / docker / pgdev jak následuje:

$ cd ~ / docker / pgdev

Nyní vytvořte docker-compose.yaml soubor v adresáři projektu ~ / docker / pgdev a zadejte následující řádky do souboru docker-compose.yaml soubor.

verze: „3.7 "
služby:
db:
obrázek: postgres: 12.2
restart: vždy
životní prostředí:
POSTGRES_DB: postgres
POSTGRES_USER: admin
POSTGRES_PASSWORD: tajné
PGDATA: / var / lib / postgresql / data
objemy:
- db-data: / var / lib / postgresql / data
porty:
- „5432: 5432“
 
pgadmin:
obrázek: dpage / pgadmin4: 4.18
restart: vždy
životní prostředí:
PGADMIN_DEFAULT_EMAIL: admin @ linuxhint.com
PGADMIN_DEFAULT_PASSWORD: tajné
PGADMIN_LISTEN_PORT: 80
porty:
- „8080: 80“
objemy:
- pgadmin-data: / var / lib / pgadmin
Odkazy:
- "db: pgsql-server"
objemy:
db-data:
pgadmin-data:

The docker-compose.yaml soubor by měl vypadat následovně.

Zde jsem vytvořil 2 služby db a pgadmin.

db služba spustí postgres: 12.2 obrázek (z DockerHub) v kontejneru Docker.

pgadmin služba spustí dpage / pgadmin4: 4.18 obrázek (z DockerHub) v jiném kontejneru Docker.

v db služba, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Proměnné prostředí se používají k nastavení výchozího názvu databáze, uživatelského jména správce a hesla správce uživatele pro server PostgreSQL. The PGDATA Proměnná prostředí se používá ke konfiguraci serveru PostgreSQL, do kterého se data ukládají / var / lib / postgresql / data adresář kontejneru.

v pgadmin služba, PGADMIN_DEFAULT_EMAIL, PGADMIN_DEFAULT_PASSWORD Proměnné prostředí se používají k nastavení přihlašovacího e-mailu a hesla webového rozhraní pgAdmin. The PGADMIN_LISTEN_PORT slouží k nastavení portu pgAdmin 80 v kontejneru.

Ve službě db veškerý obsah / var / lib / postgresql / data adresář bude trvale uložen do složky db-data objem.

V pgadmin služba, veškerý obsah / var / lib / pgadmin adresář bude trvale uložen do složky pgadmin-data objem.

V db služba, přístav kontejneru 5432 (vpravo) je namapován na hostitelský port Dockeru 5432 (vlevo, odjet).

V pgadmin služba, přístav kontejneru 80 (vpravo) je namapován na hostitelský port Dockeru 8080 (vlevo, odjet).

V pgadmin služba, alias názvu hostitele pgsql-server do db kontejner je vytvořen. K serveru PostgreSQL tedy můžete přistupovat pomocí pgsql-server jako název hostitele (není vyžadována žádná IP adresa).

Spuštění serveru PostgreSQL a pgAdmin:

Nyní pro spuštění db a pgadmin služby, spusťte následující příkaz:

$ docker-compose up -d

Služby by měly začít na pozadí.

Jak vidíte, přístav 8080 a 5432 jsou otevřeny docker-proxy servis.

$ sudo netstat -tlpn

Chcete-li zjistit, jak jsou porty mapovány, spusťte následující příkaz:

$ docker-compose ps

Jak vidíte, pro db služba, hostitelský port Dockeru 5432 je mapován na port TCP kontejneru 5432.

Pro pgadmin služba, hostitelský port Dockeru 8080 je mapován na port TCP kontejneru 80.

Přístup k serveru pgAdmin 4 nebo PostgreSQL z jiných počítačů:

Chcete-li získat přístup k databázovému serveru pgAdmin 4 nebo PostgreSQL z jiného počítače ve vaší síti, musíte znát IP adresu vašeho hostitele Docker.

Chcete-li zjistit adresu IP hostitele Dockeru, spusťte následující příkaz:

$ ip

V mém případě IP adresa mého hostitele Dockeru 192.168.20.160. Bude to pro vás jiné. Od této chvíle jej tedy vyměňte za svůj.

Přístup k pgAdmin z webového prohlížeče:

Nyní můžete snadno přistupovat k pgAdmin 4 z vašeho webového prohlížeče.

Navštivte http: // localhost: 8080 od hostitele Dockeru nebo http: // 192.168.20.160: 8080 z libovolného počítače v síti. Měla by se zobrazit přihlašovací stránka pgAdmin. Přihlaste se pomocí svého e-mailu a hesla.

Jakmile se přihlásíte, měl by se vám zobrazit panel pgAdmin.

Chcete-li nyní přidat server PostgreSQL spuštěný jako kontejner Docker, klikněte pravým tlačítkem na Servery, a pak přejděte na Vytvořit > Server…

V Všeobecné kartu, zadejte svůj server název.

Nyní přejděte na Spojení kartu a zadejte pgsql-server tak jako Jméno / adresa hostitele, 5432 tak jako Přístav, postgres tak jako Databáze údržby, admin tak jako Uživatelské jméno, tajný tak jako Heslo a zkontrolujte Uložit heslo? zaškrtávací políčko. Poté klikněte na Uložit.

pgAdmin 4 by měl být připojen k vaší databázi PostgreSQL. Nyní můžete s vaší databází PostgreSQL pracovat tolik, kolik chcete.

Přístup k PostgreSQL z DataGrip:

K databázovému serveru PostgreSQL můžete také přistupovat z IDE DataGrip nebo z jiných IDE SQL.

V případě DataGrip klikněte na + z Databáze sekce a přejděte na Zdroj dat > PostgreSQL.

Ovladač PostgreSQL nemusí být nainstalován. V takovém případě klikněte na Stažení.

Ovladač by měl být nainstalován. Nyní zadejte adresu IP hostitele Dockeru 192.168.20.160 (v mém případě) jako Hostitel, 5432 jako Přístav, admin jako Uživatel, tajný jako Heslo, postgres jako Databáze a klikněte na Vyzkoušejte připojení.

Pokud vše funguje, měli byste vidět podrobnosti o databázovém serveru PostgreSQL.

Nyní klikněte na OK.

Nyní můžete spravovat své databáze PostgreSQL z DataGrip.

Zastavení PostgreSQL a pgAdmin:

Nyní zastavit db a pgadmin služby, spusťte následující příkaz:

$ docker-compose down

The db a pgadmin služby by měly být zastaveny.

Vyčištění dat PostgreSQL a pgAdmin:

Chcete-li odstranit všechna data a nastavení databáze PostgreSQL a všechna nastavení pgAdmin, musíte odstranit db-data a pgadmin-data objemy.

Skutečný název datových svazků najdete pomocí následujícího příkazu:

$ docker volume ls

Jak vidíte, pro pgdev projekt, pgdev_db-data a pgdev_pgadmin-data.

Tyto svazky můžete odebrat pomocí následujícího příkazu:

$ docker volume rm pgdev_db-data pgdev_pgadmin-data

Reference:

[1] https: // hub.přístavní dělník.com / _ / postgres?tab = popis
[2] https: // hub.přístavní dělník.com / r / dpage / pgadmin4 /
[3] https: // www.pgadmin.org / docs / pgadmin4 / latest / container_deployment.html

Hry Jak používat GameConqueror Cheat Engine v Linuxu
Jak používat GameConqueror Cheat Engine v Linuxu
Tento článek popisuje průvodce používáním cheatovacího modulu GameConqueror v systému Linux. Mnoho uživatelů, kteří hrají hry v systému Windows, často...
Hry Nejlepší emulátory herních konzolí pro Linux
Nejlepší emulátory herních konzolí pro Linux
Tento článek uvádí seznam populárního softwaru pro emulaci herních konzolí, který je k dispozici pro Linux. Emulace je vrstva softwarové kompatibility...
Hry Nejlepší linuxové distribuce pro hraní her v roce 2021
Nejlepší linuxové distribuce pro hraní her v roce 2021
Operační systém Linux má za sebou dlouhou cestu od svého původního, jednoduchého vzhledu založeného na serveru. Tento OS se v posledních letech nesmír...