Tengo un entorno de desarrollo que estoy acoplando y me gustaría tener la capacidad de recargar en vivo mis cambios sin tener que reconstruir las imágenes de la ventana acoplable. Estoy usando docker compose porque redis es una de las dependencias de mi aplicación y me gusta poder vincular un contenedor de redis
Tengo dos contenedores definidos en mi docker-compose.yml
:
node:
build: ./node
links:
- redis
ports:
- "8080"
env_file:
- node-app.env
redis:
image: redis
ports:
- "6379"
Llegué al punto en node
el dockerfile de mi aplicación en el que agrego un volumen, pero ¿cómo puedo montar el directorio del host en el volumen para que todas mis ediciones en vivo del código se reflejen en el contenedor?
Aquí está mi Dockerfile actual:
# Set the base image to Ubuntu
FROM node:boron
# File Author / Maintainer
MAINTAINER Amin Shah Gilani <amin@gilani.me>
# Install nodemon
RUN npm install -g nodemon
# Add a /app volume
VOLUME ["/app"]
# TODO: link the current . to /app
# Define working directory
WORKDIR /app
# Run npm install
RUN npm install
# Expose port
EXPOSE 8080
# Run app using nodemon
CMD ["nodemon", "/app/app.js"]
Mi proyecto se ve así:
/
- docker-compose.yml
- node-app.env
- node/
- app.js
- Dockerfile.js
Error: Cannot find module '/data/app.js'