Dockerize ettiğim bir geliştirme ortamım var ve docker görüntülerini yeniden oluşturmak zorunda kalmadan değişikliklerimi tekrar yükleme yeteneğine sahip olmak istiyorum. Redis, uygulamamın bağımlılıklarından biri olduğu için docker compose kullanıyorum ve redis konteynerine bağlanabilmeyi seviyorum
Benimde tanımlanmış iki konteynerim var docker-compose.yml
:
node:
build: ./node
links:
- redis
ports:
- "8080"
env_file:
- node-app.env
redis:
image: redis
ports:
- "6379"
node
Uygulamamın dockerfile dosyasında bir birim eklediğim noktaya geldim , ancak ana bilgisayarın dizinini birime nasıl bağlayabilirim, böylece koda yapılan tüm canlı düzenlemelerim kapsayıcıya yansıtılır?
İşte mevcut Dockerfile'ım:
# 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"]
Projem şuna benziyor:
/
- docker-compose.yml
- node-app.env
- node/
- app.js
- Dockerfile.js
Error: Cannot find module '/data/app.js'