GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo implementar PostgreSQL en Docker Container

Introducción

PostgreSQL , también conocido como Postgres, es un sistema de gestión de base de datos relacional de objetos de código abierto. Los desarrolladores suelen optar por esta base de datos relacional, ya que es gratuita, estable y flexible. De hecho, PostgreSQL y MySQL son los sistemas de administración de bases de datos relacionales más populares.

Hoy en día, Postgres es una de las imágenes Docker más utilizadas que se ejecutan en contenedores. La popularidad de las bases de datos en contenedores se atribuye a la simplicidad con la que se pueden implementar. Además, en lugar de tener una base de datos centralizada para muchas aplicaciones, los desarrolladores pueden dedicar un contenedor PostgreSQL para cada aplicación.

En este tutorial, aprenderá a ejecutar PostgreSQL en un contenedor Docker.

Requisitos previos

  • Acceso a una línea de comando/ventana de terminal
  • Una cuenta de usuario con sudo privilegios
  • Una instalación de Docker existente

Ejecución de PostgreSQL en contenedores Docker

Implementar un contenedor de Postgres es simple. Puede encontrar la imagen de Postgres para crear estos contenedores de bases de datos en el repositorio oficial de Docker.

Esta guía le muestra dos formas de hacerlo.

La primera opción usa Docker Compose , una herramienta para gestionar aplicaciones Docker multicontenedor. Puede usar Docker Compose para configurar Postgres como un servicio que se ejecuta dentro de un contenedor. En ese caso, crea un yaml archivo con todas las especificaciones.

Alternativamente, puede usar a comando único de Docker con toda la información necesaria para implementar un nuevo contenedor de PostgreSQL.

Opción 1:ejecutar Postgres mediante Docker Compose

Para implementar un contenedor Postgres usando Docker Compose, debe tener esta herramienta Docker configurada en su sistema.

Si es usuario de Linux y necesita ayuda con la configuración, consulte una de nuestras guías sobre cómo instalar Docker Compose en Ubuntu o cómo instalar Docker Compose en CentOS.

1. Para asegurar una instalación fácil y limpia, primero queremos crear un directorio de trabajo llamado postgres y pasar a ese directorio:

mkdir postgres
cd postgres/

2. A continuación, utilice Docker Compose para descargar la imagen de Postgres y poner en marcha el servicio. Haga esto creando un nuevo docker-compose.yml archivo con un editor de su elección (en este ejemplo, usamos nano):

nano docker-compose.yml

3. Agregue el siguiente contenido a docker-compose archivo:

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

El archivo de configuración de yaml indica que hay un postgres servicio, basado en la latest postgres image . Puede elegir la versión más reciente de Postgres o especificar el número de versión que desea utilizar.

Finalmente, debe definir los puertos en los que se comunica el contenedor. 5432 es el número de puerto predeterminado para PostgreSQL.

4. Guarde y salga del archivo.

5. Ahora que tiene el archivo de configuración de yaml, puede iniciar el servicio de postgres y ejecutar el contenedor. Usa el docker-compose up comando con -d opción para ponerlo en modo de separación (lo que le permite continuar ejecutando comandos desde el shell actual):

docker-compose up -d

6. Puede consultar los registros con el comando:

docker-compose logs -f

Para volver al shell presione CTRL+C .

Opción 2:ejecutar Postgres con un solo comando de Docker

Otra forma de implementar PostgreSQL en un contenedor es ejecutando un solo comando docker.

Puede descargar y ejecutar un contenedor de Postgres especificando toda la información necesaria en un solo comando.

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

El comando le dice a Docker que ejecute un nuevo contenedor con un nombre de contenedor particular, define la contraseña de Postgres y descarga la última versión de Postgres.

Confirme que su contenedor PostgreSQL ahora está activo solicitando a Docker que enumere todos los contenedores en ejecución con:

docker ps

En esta guía, creamos un contenedor llamado example y podemos localizarlo rápidamente entre otros contenedores en ejecución.

Empezando con contenedores de Postgres

Conéctese a Postgres en Docker Container

Para ingresar a un contenedor de Postgres, debe ejecutar usando el nombre del contenedor y habilitar psql , la interfaz de línea de comandos para Postgres.

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

En el siguiente ejemplo, nos conectamos con el example contenedor como postgres usuario.

Crear una base de datos

Una vez en el contenedor Docker Postgres, podemos crear una base de datos con:

create database [db_name];

Conéctese a la base de datos como el tipo de usuario de postgres:

\c [db_name]

Con la base de datos configurada, el siguiente paso es crear un esquema que lo ayude a obtener una representación lógica de la estructura de la base de datos:

create schema [db_schema_name]

Aquí puede crear una tabla y agregar datos a la tabla.

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

Ubuntu
  1. ¿Cómo instalar el instalador gráfico de Postgres?

  2. Cómo implementar un contenedor nginx con Docker en Linode

  3. Cómo instalar Docker e implementar una pila LAMP

  4. Cómo ejecutar MySQL en un contenedor Docker

  5. Cómo usar SSH en un contenedor Docker

Cómo instalar el contenedor Ubuntu 22.04 LTS en Docker

Cómo instalar PostgreSQL en Debian 8

Cómo ejecutar PHPMyAdmin en un contenedor Docker

Cómo implementar un contenedor Docker en AWS Elastic Beanstalk

Cómo implementar y administrar un contenedor Docker MongoDB

Cómo implementar un contenedor Docker en Jelastic Cloud