Mam środowisko programistyczne, które dokeryzuję, i chciałbym mieć możliwość ponownego ładowania zmian na żywo bez konieczności przebudowywania obrazów dockera. Używam Docker Compose, ponieważ redis jest jedną z zależności mojej aplikacji i lubię łączyć kontener Redis
Mam zdefiniowane dwa kontenery w moim docker-compose.yml
:
node:
build: ./node
links:
- redis
ports:
- "8080"
env_file:
- node-app.env
redis:
image: redis
ports:
- "6379"
node
Dotarłem do punktu w pliku dokowanym mojej aplikacji, w którym dodaję wolumin, ale jak mogę zamontować katalog hosta w woluminie, aby wszystkie moje edycje kodu na żywo były odzwierciedlone w kontenerze?
Oto mój obecny plik Dockerfile:
# 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"]
Mój projekt wygląda tak:
/
- docker-compose.yml
- node-app.env
- node/
- app.js
- Dockerfile.js
Error: Cannot find module '/data/app.js'