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

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