AWS-Angular-docker无法正常工作

时间:2018-07-13 15:50:07

标签: angular amazon-web-services docker amazon-ec2

我有一个被码头化的有角度的应用程序。我的docker文件是:

FROM node:8.9 as node
WORKDIR /app
COPY package.json /app/

RUN npm install
COPY ./ /app/

ARG env=prod

RUN npm run build -- --prod --environment $env

FROM nginx:1.13

COPY --from=node /app/dist/ /usr/share/nginx/html

RUN rm /etc/nginx/conf.d/default.conf
COPY ./nginx-custom.conf /etc/nginx/conf.d/default.conf

EXPOSE 4200
#CMD npm start

我运行'docker build -t app:prod'。在本地构建我的docker应用,然后使用“ docker run -p 4200:4200 app:prod”运行它。可以找到完美的作品。

我现在使用'docker build-t app。'构建我的docker应用,然后将其标记为最新,将其推送到AWS到存储库中,创建cluser,任务等。

在AWS EC2中一切看起来都不错-但是当我将浏览器与公共IP和端口4200结合使用时,我无法连接到我的应用程序。

当我尝试运行“ docker run -p 4200:4200 app”时,出现以下消息: 无法在本地找到图片“ app:latest” 泊坞窗:来自守护程序的错误响应:应用程序的拉式访问被拒绝,存储库不存在或可能需要“泊坞窗登录”。 请参阅“ docker run --help”。

不确定这是否相关,但是我想知道为什么我不能以这种方式启动我的应用程序?

您知道我可以在AWS上进行哪些检查以找到问题吗?

谢谢, 迈克尔

1 个答案:

答案 0 :(得分:0)

添加适当的名称-在将其标记为“ app”时,Docker会在主注册表中查找。

docker build -t your.remote.repository/michael/app .

然后运行它:

docker run -p 4200:4200 your.remote.repository/michael/app

正确的标签很重要,因此Docker可以找到正确的位置。