▷ Instalación de Strapi con Docker en Linux
Strapi es un CMS headless de código abierto basado en Node.js que permite crear API REST y GraphQL. Desde su panel de administración puedes crear, administrar y publicar contenido (textos, imágenes, videos, etc.) de forma sencilla, rápida y escalable, y consumirlo después desde cualquier frontend o aplicación móvil.
En este post lo instalamos con Docker Compose en Linux, junto a una base de datos PostgreSQL y pgAdmin para administrarla.
Instalamos Docker en Linux
apt-get update && apt-get upgrade -y
apt install docker.io docker-compose -y
Creamos el directorio de trabajo
mkdir strapi
Creamos el archivo docker-compose.yml
Dentro del directorio strapi creamos el archivo:
nano docker-compose.yml
Copiamos el siguiente contenido
El archivo define tres servicios: Strapi (puerto 1337), PostgreSQL como base de datos y pgAdmin (puerto 5050) para administrarla. Cambia las contraseñas de ejemplo por unas propias.
version: '3'
services:
strapi:
image: strapi/strapi
environment:
DATABASE_CLIENT: postgres
DATABASE_NAME: strapi
DATABASE_HOST: postgres
DATABASE_PORT: 5432
DATABASE_USERNAME: strapi
DATABASE_PASSWORD: strapi
volumes:
- ./app:/srv/app
ports:
- '1337:1337'
depends_on:
- postgres
postgres:
image: postgres
environment:
POSTGRES_DB: strapi
POSTGRES_USER: strapi
POSTGRES_PASSWORD: strapi
volumes:
- ./data:/var/lib/postgresql/data
pgadmin:
container_name: pgadmin_container
image: dpage/pgadmin4
environment:
PGADMIN_DEFAULT_EMAIL: 'mfalconsoft@gmail.com'
PGADMIN_DEFAULT_PASSWORD: 'pass'
ports:
- '5050:80'
depends_on:
- postgres
Iniciamos los contenedores
docker-compose up -d
Accedemos a la aplicación
La primera vez que entres al panel te pedirá crear el usuario administrador:
http://localhost:1337/admin
Vemos el log
docker-compose logs -f
Detenemos los contenedores
docker-compose down
Eliminamos los contenedores
docker-compose rm
Eliminamos la imagen
docker rmi strapi/strapi
Nota: la imagen strapi/strapi corresponde a Strapi v3. Para las versiones actuales de Strapi, la documentación oficial recomienda crear el proyecto con npx create-strapi-app y construir tu propia imagen de Docker a partir de él.
