feat: add persistent database volume to Dockerfile and docker-compose.yml
This commit is contained in:
@@ -58,6 +58,9 @@ COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||
RUN mkdir -p /data/db /var/log/mongodb /var/run/mongodb && \
|
||||
chown -R mongodb:mongodb /data/db /var/log/mongodb /var/run/mongodb
|
||||
|
||||
# Expose volume for persistent database storage
|
||||
VOLUME ["/data/db"]
|
||||
|
||||
# Copy entrypoint
|
||||
COPY docker-entrypoint.sh /docker-entrypoint.sh
|
||||
RUN chmod +x /docker-entrypoint.sh
|
||||
|
||||
@@ -6,8 +6,16 @@ services:
|
||||
- VITE_API_URL=/api
|
||||
ports:
|
||||
- "8084:80"
|
||||
volumes:
|
||||
- mongodb_data:/data/db
|
||||
environment:
|
||||
DB_NAME: hospital
|
||||
ADMIN_DNI: "35242633"
|
||||
ADMIN_PASSWORD: admin123
|
||||
ADMIN_NOMBRE: "Sistema"
|
||||
ADMIN_APELLIDO: "Administrador"
|
||||
ADMIN_EMAIL: "admin@hospital.local"
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
mongodb_data:
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
# Ensure permissions on volume and logs directory
|
||||
mkdir -p /data/db /var/log/mongodb /var/run/mongodb
|
||||
chown -R mongodb:mongodb /data/db /var/log/mongodb /var/run/mongodb
|
||||
|
||||
echo "Starting local MongoDB server (only accessible from inside container)..."
|
||||
# Start mongod as the default mongodb user, bound to localhost (127.0.0.1) for internal access only
|
||||
su -s /bin/bash -c "mongod --dbpath /data/db --bind_ip 127.0.0.1 --fork --logpath /var/log/mongodb/mongod.log" mongodb
|
||||
|
||||
Reference in New Issue
Block a user