Grocy: 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
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!