GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come distribuire PostgreSQL su Docker Container

Introduzione

PostgreSQL , noto anche come Postgres, è un sistema di gestione di database relazionale a oggetti open source. Gli sviluppatori spesso optano per questo database relazionale in quanto è gratuito, stabile e flessibile. In effetti, PostgreSQL e MySQL sono i sistemi di gestione di database relazionali più popolari.

Oggi, Postgres è una delle immagini Docker più utilizzate che vengono eseguite nei contenitori. La popolarità dei database containerizzati è attribuita alla semplicità con cui possono essere distribuiti. Inoltre, invece di avere un database centralizzato per molte applicazioni, gli sviluppatori possono dedicare un container PostgreSQL a ciascuna applicazione.

In questo tutorial imparerai come eseguire PostgreSQL su un container Docker.

Prerequisiti

  • Accesso a una riga di comando/finestra del terminale
  • Un account utente con sudo privilegi
  • Un'installazione Docker esistente

Esecuzione di PostgreSQL su contenitori Docker

La distribuzione di un container Postgres è semplice. Puoi trovare l'immagine Postgres per la creazione di questi contenitori di database nel repository ufficiale di Docker.

Questa guida ti mostra due modi per farlo.

La prima opzione utilizza Docker Compose , uno strumento per la gestione di applicazioni Docker multi-container. Puoi utilizzare Docker Compose per configurare Postgres come servizio in esecuzione all'interno di un container. In tal caso, crei un yaml file con tutte le specifiche.

In alternativa, puoi utilizzare a comando Docker singolo con tutte le informazioni necessarie per la distribuzione di un nuovo container PostgreSQL.

Opzione 1:esegui Postgres utilizzando Docker Compose

Per distribuire un container Postgres utilizzando Docker Compose, dovresti avere questo strumento Docker configurato sul tuo sistema.

Se sei un utente Linux e hai bisogno di aiuto per la configurazione, fai riferimento a una delle nostre guide sull'installazione di Docker Compose su Ubuntu o su come installare Docker Compose su CentOS.

1. Per garantire un'installazione semplice e pulita, vogliamo prima creare una directory di lavoro denominata postgres e spostati in quella directory:

mkdir postgres
cd postgres/

2. Quindi, usa Docker Compose per scaricare l'immagine Postgres e far funzionare il servizio. A tale scopo, crea un nuovo docker-compose.yml file con un editor a tua scelta (in questo esempio abbiamo usato nano):

nano docker-compose.yml

3. Aggiungi il seguente contenuto alla composizione mobile file:

version: ‘3’
service:
  postgres:
  image: ‘postgres: latest’
  ports:
    - “5432:5432” 

Il file di configurazione di yaml indica che c'è un postgres servizio, basato sull'latest postgres image . Puoi decidere la versione più recente di Postgres o specificare il numero di versione che desideri utilizzare.

Infine, è necessario definire le porte su cui comunica il container. 5432 è il numero di porta predefinito per PostgreSQL.

4. Salva ed esci dal file.

5. Ora che hai il file di configurazione di yaml, puoi avviare il servizio postgres ed eseguire il contenitore. Usa il docker-compose up comando con il -d opzione per metterlo in modalità scollegamento (consentendoti di continuare a eseguire comandi dalla shell corrente):

docker-compose up -d

6. Puoi controllare i log con il comando:

docker-compose logs -f

Per tornare alla shell, premi CTRL+C .

Opzione 2:esegui Postgres utilizzando un singolo comando Docker

Un altro modo per distribuire PostgreSQL in un container è eseguire un singolo comando Docker.

Puoi scaricare ed eseguire un container Postgres specificando tutte le informazioni necessarie in un comando.

docker run --name [container_name] -e POSTGRES_PASSWORD=[your_password] -d postgres

Il comando dice a Docker di eseguire un nuovo container con un nome di container particolare, definisce la password di Postgres e scarica l'ultima versione di Postgres.

Verifica che il tuo contenitore PostgreSQL sia attivo chiedendo a Docker di elencare tutti i contenitori in esecuzione con:

docker ps

In questa guida abbiamo creato un contenitore denominato esempio e possiamo individuarlo rapidamente tra gli altri container in esecuzione.

A partire dai contenitori Postgres

Connettiti a Postgres nel contenitore Docker

Per inserire un container Postgres, devi eseguire utilizzando il nome del container e abilitare psql , l'interfaccia della riga di comando per Postgres.

docker exec -it [container_name] psql -U [postgres_user]

Nell'esempio seguente, ci siamo collegati all'example contenitore come postgres utente.

Crea un database

Una volta nel container Docker Postgres, possiamo creare un database con:

create database [db_name];

Connettiti al database come tipo di utente postgres:

\c [db_name]

Con il database impostato, il passaggio successivo consiste nel creare uno schema che ti aiuti a ottenere una rappresentazione logica della struttura del database:

create schema [db_schema_name]

Qui puoi creare una tabella e aggiungere dati nella tabella.

create table [table_name] ([field_names] [values])

Ubuntu
  1. Come distribuire un container nginx con Docker su Linode

  2. Come installare Docker e distribuire uno stack LAMP

  3. Come eseguire MySQL in un contenitore Docker

  4. Come SSH in un contenitore Docker

  5. Come distribuire PostgreSQL come contenitore Docker

Come installare il contenitore Ubuntu 22.04 LTS su Docker

Come installare PostgreSQL su Debian 8

Come eseguire PHPMyAdmin in un contenitore Docker

Come distribuire un container Docker in AWS Elastic Beanstalk

Come distribuire e gestire un contenitore Docker MongoDB

Come distribuire il container Docker su Jelastic Cloud