Volver al blog
Chat

Playground de Live Helper Chat con Docker, Traefik, MySQL y Redis

1 jun 2023· 3 min de lectura
Playground de Live Helper Chat con Docker, Traefik, MySQL y Redis

Live Helper es un chat de soporte en vivo de código abierto para aplicaciones web progresivas con integraciones de bot, Voz & Video & ScreenShare, AI y API Rest

A continuación describiré unos playgrounds que le ayudarán a levantar Live Helper Chat con Docker, Traefik, MySQL y Redis, existe dos versiones una compatible con PHP y otra con NodeJS, dependiendo de cual sea el de tu preferencia.

Requisitos:

  • git 2.2 or higher
  • docker 20 or higher
  • docker-compose 1.20 or higher

Servicios configurados:

  • web - nginx service
  • php - php-fpm service
  • cobrowse - co browsing running NodeJS service
  • php-cronjob - cron jobs running service
  • php-resque - php-resque worker running service
  • nodejshelper - NodeJS Helper NodeJS running service
  • redis - Redis service
  • db - Database service

Instrucciones de Docker:

Clona el repositorio:

bash
git clone git@github.com:marcotorres/livechat.git docker-standalone

Nos ubicamos en:

bash
cd docker-standalone

Copia:

bash
cp .env.default .env

Edita el archivo .env y cambia LHC_SECRET_HASH por un random string

Cambiar las variables de entorno relacionado a la BD:

text
Host - db
Database name - lhc_database
Database username - lhc_usr
Database password - lhc_password

Para la versión estándar sin ejecutar el complemento NodeJS, ejecuta install.sh esto verificará Live Helper Chat y las extensiones requeridas

bash
docker-compose -f docker-compose-standard.yml pull && docker-compose -f docker-compose-standard.yml up -d

Para la versión con complemento NodeJS, ejecute install-nodejs.sh, esto verificará Live Helper Chat y las extensiones requeridas

bash
docker-compose -f docker-compose-nodejs.yml pull && docker-compose -f docker-compose-nodejs.yml up -d

Navegue hasta localhost:8081 y siga las instrucciones de instalación.

En los primeros pasos de instalación, es posible que deba ejecutar estos comandos para cambiar los permisos de las carpetas.

bash
docker exec -it dockerstandalone_web_1 chown -R www-data:www-data /code/cache
docker exec -it dockerstandalone_web_1 chown -R www-data:www-data /code/settings
docker exec -it dockerstandalone_web_1 chown -R www-data:www-data /code/var

o cambiar el permiso de estas carpetas:

  • livehelperchat/lhc_web/cache
  • livehelperchat/lhc_web/settings
  • livehelperchat/lhc_web/var

Para Traefik:

Crear una red:

bash
docker network create --gateway 192.168.90.1 --subnet 192.168.90.0/24 traefik

Ejecutar:

bash
cp traefik/acme.json.example traefik/acme.json && \
cp traefik/logs/traefik.log.example traefik/logs/traefik.log && \
cp traefik/shared/.htpasswd.example traefik/shared/.htpasswd && \
chmod 0600 traefik/acme.json

Después de instalar todo, vaya a Settings -> Live help confgiuration -> Chat configuration -> (Screen sharing) y Check NodeJs support enabled In socket.io path, optional enter /wsnodejs/socket.io

Link del repositorio en github

Foto de Marco Torres

Marco Torres

Desarrollador Full-Stack senior con DevOps y arquitectura cloud, y Bachiller en Ingeniería de Sistemas. Escribo sobre arquitectura escalable y las lecciones de llevar sistemas a producción — desde la trinchera.

¿Estás llevando esto a producción?

Si necesitas apoyo con arquitectura escalable, cloud o DevOps, conversemos sobre tu proyecto.

Conversemos