最近工做上在使用Docker打包服務html
因此有一些理解記錄在此前端
定義nginx
做爲一個容器包含了其內部本身的運行環境,與外界隔離。docker
Dockerfilenpm
FROM nginx
COPY dist /usr/share/nginx/html
COPY build/nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
複製代碼
打包前端項目至dist目錄npm run build
ui
打包docker鏡像docker build -t test .
spa
以根目錄爲準打包爲鏡像testcode
-t
:鏡像的名字htm
運行cmd
在本地利用docker啓動一個端口和內部監聽端口對應
docker run -d -p 4002:80 imagename
在本地啓動4002端口映射到docker容器的內部端口
-d
: 後臺運行容器,並返回容器ID(不佔用你的一個cmd窗口)
-p
:端口映射,格式爲:主機(宿主)端口:容器端口
以後在本地訪問4002端口即可以看到你的dist的內容了