Docker中的AngularJS和NodeJS应用程序

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

现在应用程序正在泊坞窗容器中运行。 容器正在运行:

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

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

我需要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 

我的angular度运行在端口8080和8888上的nodejs。

您可以通过重复-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