diff --git a/Dockerfile b/Dockerfile index 7245875..8fb5a3a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,9 +43,19 @@ COPY server ./server COPY shared ./shared COPY tsconfig.json ./ -# Persistent SQLite data +# Persistent SQLite data. +# +# NO declares `VOLUME /app/data` aquí. Esa instrucción hace que Docker fabrique un +# volumen ANÓNIMO en cada arranque, y Coolify los purga al recrear el contenedor: +# cada despliegue estrenaba base vacía y `ensureSeed()` la resembraba, así que se +# perdían las citas, los clientes y todo lo configurado en Ajustes. Se verificó +# comparando el nombre del volumen entre despliegues — cambiaba cada vez. +# +# La persistencia la aporta el almacenamiento con nombre declarado en Coolify +# (`s30f7egdlkx4wyjp59o1iunc-agendamax-data` montado en /app/data), que sobrevive a +# la recreación del contenedor. Si algún día se despliega en otro sitio, hay que +# declarar allí un volumen equivalente: sin él la base es efímera. RUN mkdir -p /app/data -VOLUME /app/data EXPOSE 3000 CMD ["npx", "tsx", "server/index.ts"]