J'ai un environnement de développement que je suis en train de dockeriser et j'aimerais avoir la possibilité de charger en direct mes modifications sans avoir à reconstruire les images docker. J'utilise docker compose parce que redis est l'une des dépendances de mon application et j'aime pouvoir relier un conteneur redis.
J'ai deux conteneurs définis dans mon docker-compose.yml
:
node:
build: ./node
links:
- redis
ports:
- "8080"
env_file:
- node-app.env
redis:
image: redis
ports:
- "6379"
Je suis arrivé au point où dans mon node
J'ai ajouté un volume dans le dockerfile de l'application, mais comment monter le répertoire de l'hôte dans le volume pour que toutes mes modifications du code soient reflétées dans le conteneur ?
Voici mon Dockerfile actuel :
# 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"]
Mon projet ressemble à ceci :
/
- docker-compose.yml
- node-app.env
- node/
- app.js
- Dockerfile.js