docker部署node容器

把一個 Node.js web 應用程序給 Docker 化文檔
介紹文檔

1、 下載Docker Desktop:下載鏈接
2、 而後啓動docker
3、 新建項目,在文件夾中新建Dockerfile.dockerignore
4、 建立鏡像:docker build –t {鏡像名} . (不能忽略後面的.
5、 運行容器:docker run –it {鏡像名}
創建鏡像
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

退出容器:exit

在這裏插入圖片描述

在這裏插入圖片描述

啓動後,瀏覽器無法訪問容器裏的服務

https://blog.csdn.net/LOVELONG8808/article/details/80419118
未解決

example中
修改代碼裏的host:127.0.0.1 –> 0.0.0.0 解決!
Vue-cli後的項目,啓動了仍無法訪問:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
Logs沒有報錯
在這裏插入圖片描述
修改host:localhost改爲0.0.0.0

執行命令:docker run -p 8872:8080 -d gjw1516/docker-vuecli-example --mount type=bind,source=/src,target=/src
報以下信息:
Error response from daemon: OCI runtime create failed: container_linux.go:344: starting
container process caused “exec: “–mount”: executable file not found in $PATH”: unknown.
解決:添加/bin/bash,命令爲:docker run -p 8872:8080 -d gjw1516/docker-vuecli-example /bin/bash --mount type=bind,source=/src,target=/src
但是執行後,沒有報錯,但是docker ps沒有起來服務。
問題原因:https://www.jianshu.com/p/f1e7a1630c64
因此問題解決方法不是添加/bin/bash解決,而是調換—mount的位置,命令爲:

docker run -d -it --mount type=bind,source=/src,target=/src -p 8879:8080 gjw1516/docker-vuecli-example

但是更改目錄下的文件,仍無法同步
掛載本地地址應爲絕對路徑,並且共享該路徑:
1、 打開docker設置Settings
2、 切換到Shared Drives點擊Reset credentials重置
3、 選中要共享的磁盤,應用後可能需要輸入本機用戶的密碼
4、 修改命令中共享的本地路徑,如:

docker run -d -it --mount type=bind,source=f:/work/docker/myProject/docker-vuecli-example/src,target=/src -p 8879:8080 gjw1516/docker-vuecli-example

本地src文件夾下新增文件後使用docker exec -it {containerID} /bin/bash發現期望的src路徑下沒有新增的文件。後來發現在Dockerfile中設置了容器的工作路徑爲:

WORKDIR /project/example

因此掛載的話需要掛載到容器對應的文件夾路徑中,如:

docker run -d -it --mount type=bind,source=f:/work/docker/myProject/docker-vuecli-example/src,target=/project/example/src -p 8879:8080 gjw1516/docker-vuecli-example

The command ‘/bin/sh -c npm install’ returned a non-zero code: 1
報錯可能是node版本不正確,修改node版本

安裝vue-cli報錯:
Unexpected end of JSON input while parsing near ‘…precated"},“1.0.4”:{"’
解決:npm cache clean –force
然後重新執行npm install

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章