Si has leído nuestros artículos previos, te habrás enterado que OctoberCMS ha generado un nuevo esquema de pagos y esto origino una ruptura interna entre los colaboradores del proyecto quienes quienes lanzaron WinterCMS una derivación del actual OctoberCMS.
Varios desarrolladores que hemos usado este CMS también han optado por mirar y migrar sus proyectos a este nuevo Administrador de Contenido, y por ello me he unido para proveer de las primeras imágenes Docker de WinterCMS de forma gratuita.
Para generar dichas imágenes me base en el código proporcionado por @aspendigital, haciendo una derivación para generar el CI con Codefresh un SaaS al que le he confiado varios de mis pipelines desde hace mas de 2 años.
Al momento de escribir este artículo he generado 3 versiones de WinterCMS, v1.1.0, v1.1.2 y v1.1.3 con PHP 7.2 a 7.4 con dos variantes, para apache y fpm; el por que no esta la version 1.1.1 se debe a que generó un error de sqlite al momento de su construcción, por lo que opté por no generar sus respectivas imágenes, así también las imágenes con PHP 5.6 fueron descartadas , esto debido a que WinterCMS recomienda usar la version PHP 7.2 en adelante.
¿Cómo usar la imagen?
La forma rápida
$ docker run -p 80:80 --name winter webmago/winter:latest
Detener la imagen con CTRL-C
$ docker rm winter # Destruye el contenedor
Si hay un conflicto con el puerto, recibirás un mensaje de error del daemon Docker. Intenta mapear a un puerto local (-p 8080:80) o apaga el contenedor o servidor que esté usando el puerto deseado.
- Visita http://localhost usando tu navegador.
- Ingresa al backend http://localhost/backend con el usuario
admin
y passwordadmin
. - Presiona
CTRL-C
para detener el contenedor. Ejecutar el contenedor en primer plano enviara los mensajes de log a la terminal.
Ejecutar el contenedor en segundo plano con la opcion -d
:
$ docker run -p 80:80 --name winter -d webmago/winter:latest
$ docker stop winter # Detener el contenedor. Para reiniciar docker start winter
$ docker rm winter # Destruir el contenedor
Trabajar con archivos locales
/var/www/html
para el document root
del servidor web. Es aquí donde el codigo base de Winter CMS reside dentro del contenedor. Puedes reemplazar archivos y carpetas, o itnroducir nuevos con volumenes montados vinculados:# Developing a plugin
$ git clone [email protected]:aspendigital/oc-resizer-plugin.git
$ cd oc-resizer-plugin
$ docker run -p 80:80 --rm \
-v $(pwd):/var/www/html/plugins/aspendigital/resizer \
webmago/winter:latest
docker-compose
introduciendo un archivo docker-compose.yml
a tu proyecto:# docker-compose.yml
version: '2.2'
services:
web:
image: webmago/winter
ports:
- 80:80
volumes:
- $PWD:/var/www/html/plugins/aspendigital/resizer
$ docker-compose up -d # inicia los servicios definidos en `docker-compose.yml` en el fondo
$ docker-compose down # detiene y destruye
Estas son algunas formas principales de como usar esta imagen, si requieres una personalización o implementarla en algun cluster Kubernetes contactame.
Comments are closed