Docker中的AngularJS和NodeJS应用程序

时间:2016-01-13 18:12:55

标签: angularjs node.js docker

我有一个angular和nodejs应用程序。 API&#39s(nodejs)在端口8888上运行 Angular正在端口8080上运行

现在应用程序正在docker容器中运行。 容器运行:

docker run -d -p 49160:8080 --name app localhost:5000/test/app

问题是。现在,我可以访问本地主机上的API:49160,但我不知道如何访问我的角度。哪个在另一个端口上运行

我需要2个容器吗?在每个教程中,我都在同一个容器中看到它。

编辑:这是我的dockerfile:

FROM node

# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

RUN npm install -g bower
RUN npm install -g gulp

# Install app dependencies
COPY . /usr/src/app/
RUN bower install
RUN npm install
RUN gulp build

EXPOSE 8080
CMD [ "node", "server.js" ]

我的跑步命令是:

docker run -d -p 49160:8080 -p 8888:8888 --name app localhost:5000/test/app

My angular在端口8080上运行,nodejs在8888上运行。

1 个答案:

答案 0 :(得分:5)

您可以通过重复-p标志来公开Docker容器的多个端口:

docker run -p <host_port1>:<container_port1> -p <host_port2>:<container_port2>

在你的情况下,你可以这样做:

docker run -d -p 49160:8080 -p 8888:8888 --name app localhost:5000/test/app