Desplegar FacturaScripts con Docker

Docker permite automatizar el despliegue de aplicaciones dentro de contenedores de software, proporcionando una capa adicional de abstracción sobre el sistema operativo. Use nuestro Docker oficial de FacturaScripts en Docker Hub para desplegar FacturaScripts. Este contenedor ya incluye Apache, PHP y todas las extensiones necesarias.

Descargar Docker de FacturaScripts y ejecutar

docker pull facturascripts/facturascripts
docker run -d --name facturascripts -p 80:80 facturascripts/facturascripts:latest

Este comando ejecuta el contenedor facturascripts, mapeando además el puerto 80 de localhost al puerto 80 del contenedor. Así puede abrir su navegador y entrar en http://localhost para acceder a FacturaScripts.

MySQL

El contenedor facturascripts no incluye MySQL. Pero puede usar el Docker oficial de MySQL para desplegar un contenedor con MySQL:

docker pull mysql
docker run --name mysql -e MYSQL_ROOT_PASSWORD=mypassword -d -p 3306:3306 mysql:latest

Estos comandos despliegan un contenedor de MySQL, mapeando el puerto 3306 de localhost al 3306 del contenedor, y estableciendo mypassword como contraseña de root en MySQL. En el instalador de FacturaScripts deberá escribir mysql como servidor de base de datos y mypassword como contraseña de la base de datos.

docker-compose.yml

docker-compose permite iniciar varios contenedores de forma organizada. Lo que es perfecto para iniciar tanto FacturaScripts como MySQL con todos los parámetros necesarios. Use el docker-compose.yml oficial de FacturaScripts para desplegar FacturaScripts y MySQL:

wget https://raw.githubusercontent.com/FacturaScripts/docker-facturascripts/master/docker-compose.yml
docker-compose up -d

Con esta configuración se ejecuta un contenedor con FacturaScripts que almacena los datos en el directorio facturascripts y un contenedor con MySQL que almacena los datos en el directorio mysql.

Para continuar

  • Abra el navegador y entre en http://localhost
  • Escriba mysql como host base de datos
  • Escriba mypassword como contraseña base de datos
  • Si tiene problemas, lea la sección de errores frecuentes.
¿No tiene Docker instalado?

Si no conoce Docker es mejor que evite este método de instalación. Docker no es para todo el mundo y puede ser muy complicado para novatos.

¿No tiene docker-compose?

¿Dónde se guardan los datos?

Si se está haciendo esta pregunta, docker no es para usted. Evite este método de instalación.

Errores frecuentes
  • 2002: php_network_getaddresses: getaddrinfo failed: Name or service not known
    • Este error suele indicar que no se ha podido conectar al servidor de base de datos. Generalmente ocurre cuando se deja localhost en lugar del nombre del docker de la base de datos. Si está usando nuestro docker-compose, fíjese que hay que escribir mysql como host de base de datos y mypassword como contraseña.
  • ERROR: for root_mysql_1 Cannot start service mysql: OCI runtime create failed: this version of runc doesn't work on cgroups v2: unknown
XDEBUG

Existe un docker alternativo que incluye xdebug y phpmyadmin: https://github.com/totva/docker-facturascripts

FacturaScripts Docker xdebug


Copyright (c) 2013-2021 FacturaScripts