程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新?

开发过程中遇到更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新的问题如何解决?下面主要结合日常开发的经验,给出你关于更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新的解决方法建议,希望对你解决更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新有所启发或帮助;

我想从开发环境中实现热重载功能,这样当我更改源代码中的任何内容时,它将通过安装卷将更改反映到 docker 容器,从而在我的本地主机中看到更改。

下面是我的 docker-compose 文件

version: '3.9'

services:
  server:
    restart: always
    build:
      context: ./server
      dockerfile: Dockerfile
    volumes:
      # don't overwrite this folder in container with the local one
      - ./app/node_modules
      # map current local directory to the /app insIDe the container
      #This is a must for development in order to update our container whenever a change to the source code is made. Without this,you would have to rebuild the image each time you make a change to source code.
      - ./server:/app
    # ports:
    #   - 3001:3001
    depends_on:
      - mongodb
    environment:
      NODE_ENV: ${NODE_ENV}
      MONGO_URI: mongodb://${MONGO_ROOT_USERname}:${MONGO_ROOT_PASSWORD}@mongodb
    networks:
      - anfel-network

  clIEnt:
    stdin_open: true
    build:
      context: ./clIEnt
      dockerfile: Dockerfile
    volumes:
      - ./app/node_modules
      - ./clIEnt:/app
    # ports:
    #   - 3000:3000
    depends_on:
      - server
    networks:
      - anfel-network

  mongodb:
    image: mongo
    restart: always
    ports:
      - 27017:27017
    environment:
      MONGO_INITDB_ROOT_USERname: ${MONGO_ROOT_USERname}
      MONGO_INITDB_ROOT_PASSWORD: ${MONGO_ROOT_PASSWORD}
    volumes:
      # for persistence storage
      - mongodb-data:/data/db
    networks:
      - anfel-network

  # mongo express used during development
  mongo-express:
    image: mongo-express
    depends_on:
      - mongodb
    ports:
      - 8081:8081
    environment:
      ME_CONfig_MONGODB_adminUSERname: ${MONGO_ROOT_USERname}
      ME_CONfig_MONGODB_adminPASSWORD: ${MONGO_ROOT_PASSWORD}
      ME_CONfig_MONGODB_PORT: 27017
      ME_CONfig_MONGODB_SERVER: mongodb
      ME_CONfig_BASICAUTH_USERname: root
      ME_CONfig_BASICAUTH_PASSWORD: root
    volumes:
      - mongodb-data
    networks:
      - anfel-network

  Nginx:
    restart: always
    depends_on:
      - server
      - clIEnt
    build:
      context: ./Nginx
      dockerfile: Dockerfile
    ports:
      - '8080:80'
    networks:
      - anfel-network
    # volumes:
    #   - ./Nginx/default.conf:/etc/Nginx/conf.d/default.conf

networks:
  anfel-network:
    driver: brIDge

volumes:
  mongodb-data:
    driver: local

如有任何建议,我们将不胜感激。

解决方法

您必须创建一个bind mount,this 可以帮助您

大佬总结

以上是大佬教程为你收集整理的更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新全部内容,希望文章能够帮你解决更改源代码不会使用 docker-compose 和 mern 堆栈上的卷进行实时更新所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: