2016-12-07 51 views
0

感謝Docker for Mac,現在可以在Docker容器內運行本地開發服務器。我們只需將本地存儲庫作爲卷裝入容器即可。如果我們在本地進行更改,它會自動更新容器(感謝您的體積),我們不必重新啓動服務器。如何構建用於生產的卷的碼頭圖像

我們無法弄清的是這些圖像應該如何爲生產而建造。就拿這個簡單的節點服務爲例:

FROM node:6 

# Install the dependencies outside of the application's volume directory 
ADD package.json .npmrc /node/ 
RUN npm install --prefix /node 

# Set up the correct paths for the new node modules installation 
ENV NODE_PATH /node/node_modules:$NODE_PATH 
ENV PATH $PATH:/node/node_modules/.bin 

# Create an endpoint to mount the service's repository 
VOLUME /runtime 
WORKDIR /runtime 

# Expose the application's port 
EXPOSE 10010 

# Start the server 
CMD scripts/start 

爲了創造我們的生產容器,我們真的很想代替ADD安裝卷的文件。這樣我們可以部署圖像並簡單地運行它。 Docker處理這個問題的正確方法是什麼?

+0

可能的重複[當我的開發環境將我的代碼庫裝入容器時,如何構建docker映像?](http://stackoverflow.com/questions/40914696/how-do-i-build-docker-images-當-我的開發環境坐騎 - 我的代碼庫中) – Matt

回答

1

在PROD中有一個NFS並創建一個安裝點。通過-v選項啓動容器時使用該安裝點。這樣它可以跨多個容器共享並處理負載平衡的東西。當他們是一個陳舊的掛載創建,那個時候只有你需要重新啓動容器/創建新的容器。

相關問題