Npm在Docker容器中运行服务



我刚学会了Docker。

我下载了ubuntu 18.04的镜像文件。

nodejsnpm安装在容器中。

在我安装了所需的软件包之后,npm install.

使用npm run serve

我无法在mac的外部网络上看到localhost:8080 .

我根据以下信息执行Google搜索。

It seems you are running Vue CLI inside a container.
Access the dev server via http://localhost:<your container's external mapped port>/

但是我看到每个人都使用docker文件。

因为我刚刚学习了docker,但对docker文件了解不多。

我希望进入容器后,npm run serve可以被外部访问,我该怎么办?

docker exec -it 858ba945a7386a7b318587ea35d903fb78b5bc6324d3bbc14c2969d7974ea44d /bin/bash 

First

直接使用node:<version>官方图片,而不是ubuntu或其他sso图片。最佳实践是修复一个版本。

Node镜像包含Node、npm和sso环境。

第二

如果你使用Docker组成docker-compose.yml中,您必须像这样映射服务(包含node图像)的端口:

ports:
- "8080:8080" 

第一个是你从浏览器调用的(http://localhost:8080)。

(忽略最终分离的nginx/webserver容器)。

如果你使用Docker直接运行带有-p选项的命令,如下所示:

docker run -p 8080:8080 <container>

你必须添加端口映射,参见docs

-p 8080:8080将容器中的TCP端口80映射到Docker主机上的8080端口

相关内容

  • 没有找到相关文章

最新更新