每當我在nodejs應用程序中更改文件時,我必須重新構建泊塢窗圖像。
這種感覺多餘,會降低我的工作流程。有沒有適當的方法來同步nodejs應用程序文件,而無需重新構建整個圖像,或者這是一個正常的用法?我應該如何實現更好的Docker工作流程?
1
A
回答
0
我最終什麼事做的是:
1)使用量與docker run
命令 - 這樣我就可以改變代碼,而無需每次都重建泊塢窗圖像。
2)我有一個node_modules被覆蓋的問題,因爲一個卷的行爲就像是一個掛載 - 通過節點的PATH遍歷來修復它。
Dockerfile:
FROM node:5.2
# Create our app directories
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
RUN npm install -g nodemon
# This will cache npm install
# And presist the node_modules
# Even after we are using the volume (overwrites)
COPY package.json /usr/src/
RUN cd /usr/src && npm install
#Expose node's port
EXPOSE 3000
# Run the app
CMD nodemon server.js
命令行:
建:
docker build -t web-image
運行:
docker run --rm -v $(pwd):/usr/src/app -p 3000:3000 --name web web-image
1
這聽起來像你想加快開發過程。在這種情況下,我會建議使用docker run -v
選擇安裝目錄在您的容器:https://docs.docker.com/engine/userguide/dockervolumes/#mount-a-host-directory-as-a-data-volume
一旦你完成開發程序建立的形象和現在沒有-v
選項啓動泊塢窗。
相關問題
- 1. Docker工作流程
- 2. Docker開發工作流程
- 3. 如何在執行流操作時實現更好的粒度?
- 4. 實現工作流
- 5. 尋找更好的應用程序部件「工作流程」
- 6. 我應該選擇哪種工作流引擎來實現工作流的動態重新配置?
- 7. ruote和工作流程,哪個更好?
- 8. 記錄操作,如何實現更好
- 9. 如何爲預先存在的MVC應用程序實現工作流程?
- 10. Mac上的TensorFlow docker dev工作流程
- 11. 與node.js的Docker開發工作流程
- 12. docker-compose jobs應該如何發現etcd?
- 13. Jenkins CI工作流程實現
- 14. 使用Spring實現工作流程
- 15. 工作流程描述和實現淨
- 16. 如何實現更好
- 17. 我應該如何實現滾動?
- 18. 我應該如何實現__hash__和__str__
- 19. 我應該如何爲AndEngine實現ITouchArea.convertSceneToLocalCoordinates()?
- 20. 在java中實現流程圖類型的工作流程
- 21. Docker CD/CI工作流程的最佳實踐是什麼?
- 22. 我應該如何爲應用程序實現OAuth?
- 23. Docker持續部署工作流程
- 24. 如何使用JBPM 6.2中的活動流程實例更新工作流程
- 25. 我應該如何使用.NET工作流隊列?
- 26. 我應該如何阻止長時間運行的WF4工作流程?
- 27. 使用現有內容的新工作流程和更名工作流程
- 28. INativeElementView應該如何實現?
- 29. 如何在工作流程中實現日誌記錄
- 30. 在PureMVC中實現流程工作流程
問題是「這是正常用法嗎?」或者你在尋求優化Dockerfile構建的幫助?對'Dockerfile'中的命令使用的文件的更改將使後續步驟失效,因此需要重建它們。在這種情況下,是的,這是正常的行爲。但是,如果您可以發佈一些工作流程,Dockerfile以及可能需要優化的步驟,那麼構建答案會更容易一些。 –
那麼我認爲更多關於優化方向。我會很快發佈我的當前解決方案。 – funerr