我的平均堆栈代码在docker-compose配置中工作。如果我docker-compose up
在自己的PC上运行,则可以在“localhost
如果进入应用程序服务”并单击docker-compose预览选项并上传docker-compose.yml文件,则可以成功登录到我的应用程序。部署后,当我单击应用程序的URL时,出现应用程序错误,并且不确定原因。也许我必须更改文件中的某些内容才能使其在不同的环境中工作?我对此表示感谢!
我读过某个地方,如果在同一订阅中使用ACR,则不必提供用户名,密码或url详细信息。因此,如果是这种情况,那么身份验证就不是问题。
前端docker映像和后端docker映像位于azure容器注册表中。我在应用程序服务中设置Docker时指向注册表-来自Azure的Docker日志说
2020-02-19 15:08:20.257 INFO - Starting multi-container app, configuration =
2020-02-19 15:08:22.806 ERROR - Pull image threw Exception: Object reference not set to an instance of an object.
2020-02-19 15:08:22.806 ERROR - Pulling docker image failed:
2020-02-19 15:08:22.806 ERROR - Image pull failed: Verify docker image configuration and credentials (if using private repository)
2020-02-19 15:08:22.806 ERROR - multi-container unit was not started successfully
2020-02-19 15:08:22.831 INFO - Container logs from testinggc_backend_0_250edca0 =
2020-02-19 15:08:28.902 INFO - Stoping site testinggc because it failed during startup.
2020-02-19 15:08:30.129 INFO - Starting multi-container app, configuration =
前端Dockerfile
FROM node
MAINTAINER Phil
WORKDIR /src
COPY . .
RUN npm install
RUN npm install -g @angular/cli
EXPOSE 4200
CMD ng serve --host 0.0.0.0 --port 4200
后端Dockerfile
FROM node:10.16.3
MAINTAINER Phil
WORKDIR /src
COPY . /src
RUN npm install
RUN npm install -g nodemon
EXPOSE 3000
CMD ["npm", "run", "start"]
docker-compose.yml
version: '3'
services:
backend:
build: ./backend
ports:
- "3000:3000"
frontend:
build: ./frontend
ports:
- "4200:80"
对于此问题,问题在于build
Azure App Service中不支持的docker-compose属性。您可以在Docker Compose options中获得有关支持选项的更多详细信息。
因此,您的解决方案是自己在本地创建映像,然后将其推送到docker注册表,例如Azure容器注册表。最后,您需要将更build
改为image
。然后将其部署到Azure App Service,它将可以正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句