phplist: ubuntu-server 22.04 con docker

  • Actualizamos el sistema
sudo apt update && sudo apt upgrade -y
  • Dependencias
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
  • Agregar la clave GPG de Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  • Agregar el repositorio de Docker:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  • Instalar Docker:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
  • Verificar la instalación:
docker --version
  • Resultado
Docker version 27.4.0, build bde2b89
  • Opcional: Permitir que el usuario actual ejecute Docker sin sudo:
sudo usermod -aG docker $USER

Instalación y despliegue de phpList

  • Vamos a la ruta /home/cgi/
cd /home/cgi/
  • Clonamos el repositorio
git clone https://github.com/phpList/phplist-docker.git
  • Esto nos descarga
  • descargamos la aplicacion
sudo docker pull phplist/phplist
  • Crear volúmenes para la persistencia de datos:
sudo docker volume create phplist-data
sudo docker volume create phplist-config
  • Desplegar el contenedor con persistencia:
sudo docker run -d \
-p 80:80 \
--name phplist \
-v phplist-data:/var/www/html/lists/config \
phplist/phplist

Gestión

  • Con este comando podemos ver si la app esta corriendo
sudo docker ps
  • Detener
sudo docker stop phplist
  • Eliminar contenedor
sudo docker rm phplist