Grocy: Docker

2 minuto(s) de lectura

Docker

Grocy es una solución de administración del hogar y comestibles autohospedada basada en la web para su hogar.

Las principales características son las siguientes:

  • Seguimiento de compras: Una interfaz lista para el lector de códigos de barras hace que esta sea una tarea fácil y rápida y siempre sabrá lo que tiene actualmente en casa.
  • Automatiza y optimiza tu lista de la compra: Definir cantidades mínimas de existencias de sus productos favoritos.
  • Desperdiciar menos: Siempre sabrás lo que caduca a continuación.
  • Formularios de entrada hechos para la productividad.
  • Recetas con inteligencia: Mantenga sus recetas y vea de un vistazo si todo lo que necesita está disponible en casa.
  • Planificación de comidas: Planifique sus comidas diarias en base a sus recetas y ponga todo lo necesario.
  • Mantenga todos los manuales de instrucciones y la información importante sobre sus dispositivos en un solo lugar para tenerlos a mano cuando sea necesario.
  • Seguimiento de las tareas del hogar.
  • Maneja tus baterías: Use baterías recargables para todo para proteger nuestro medio ambiente y mantenerlas en buen estado sabiendo cuándo las cargó por última vez.
  • Campos / objetos / listas personalizados:A cualquier entidad (como productos o tareas) se pueden adjuntar campos personalizados.

Instalación

Grocy

Vamos a realizar unos pasos previos para preparar el entorno. En primer lugar creamos las carpetas donde alojar el proyecto:

mkdir -p $HOME/docker/grocy/config && \
cd $HOME/docker/grocy

Ahora vamos a crear el fichero de configuración docker-compose.yml lanzando el siguiente comando:

cat << EOF > $HOME/docker/grocy/docker-compose.yml
version: "2.1"
services:
  grocy:
    image: ghcr.io/linuxserver/grocy
    container_name: Grocy
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid
    volumes:
      - ~/docker/grocy/config:/config
    ports:
      - 9283:80
    restart: always
EOF

Vamos a repasar los principales parámetros a modificar para adaptarlos a nuestro sistema y configuración especifica:

Parámetro Función
PUID=1000 UID de nuestro usuario. Para saber nuestro ID ejecutar en terminal: id
PGID=1000 GID de nuestro usuario. Para saber nuestro ID ejecutar en terminal: id
TZ=Europe/Madrid Zona horaria Europa/Madrid
~/docker/grocy/config:/config Ruta donde almacenamos los datos
9283:80 Puerto gestión web 9283
restart: always Habilitamos que tras reiniciar la maquina anfitrion vuelva a cargar el servicio

Una vez configurado, lo levantamos para ser creado y ejecutado:

docker-compose up -d

Grocy + Traefik

Requisito obligatorio tener instalado Docker: Traefik Maroilles

Vamos a realizar unos pasos previos para preparar el entorno. En primer lugar creamos las carpetas donde alojar el proyecto:

mkdir -p $HOME/docker/grocy/config && \
cd $HOME/docker/grocy

Ahora vamos a crear el fichero de configuración docker-compose.yml lanzando el siguiente comando:

cat << EOF > $HOME/docker/grocy/docker-compose.yml
version: "2.1"
services:
  grocy:
    image: ghcr.io/linuxserver/grocy
    container_name: Grocy
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid
    volumes:
      - ~/docker/grocy/config:/config
    ports:
      - 9283:80
    networks:
      - traefik
    labels:
      - traefik.backend=grocy
      - traefik.frontend.rule=Host:despensa.lordpedal.duckdns.org
      - traefik.docker.network=traefik
      - traefik.port=80
      - traefik.enable=true
    restart: always
networks:
  traefik:
    external: true
EOF

Vamos a repasar los principales parámetros a modificar para adaptarlos a nuestro sistema y configuración especifica:

Parámetro Función
PUID=1000 UID de nuestro usuario. Para saber nuestro ID ejecutar en terminal: id
PGID=1000 GID de nuestro usuario. Para saber nuestro ID ejecutar en terminal: id
TZ=Europe/Madrid Zona horaria Europa/Madrid
~/docker/grocy/config:/config Ruta donde almacenamos los datos
9283:80 Puerto gestión web 9283
restart: always Habilitamos que tras reiniciar la maquina anfitrion vuelva a cargar el servicio
traefik.frontend.rule=Host:despensa.lordpedal.duckdns.org Sustituimos la variable lordpedal por nuestro ID de DuckDNS

Una vez configurado, lo levantamos para ser creado y ejecutado:

docker-compose up -d

En mi caso, el servicio estaría disponible en la dirección web https://despensa.lordpedal.duckdns.org

Configuración

Usuario / Contraseña: admin

Grocy

Necesitamos configurar una API para poder interactuar, para ello en la ruta de navegación añadimos la variable /manageapikeys

En mi caso queda de la siguiente forma: https://despensa.lordpedal.duckdns.org/manageapikeys

Y listo!