我有以下docker-compose
文件:
version: "3"
services:
scraper-api:
build: ./ATPScraper
volumes:
- ./ATPScraper:/usr/src/app
ports:
- "5000:80"
test-app:
build: ./test-app
volumes:
- "./test-app:/app"
- "/app/node_modules"
ports:
- "3001:3000"
environment:
- NODE_ENV=development
depends_on:
- scraper-api
其中构建以下内容Dockerfile
:
scraper-api
(一个python flask
应用程序):
FROM python:3.7.3-alpine
WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "./app.py"]
test-app
(react
针对api 的测试应用程序):
# base image
FROM node:12.2.0-alpine
# set working directory
WORKDIR /app
# add `/app/node_modules/.bin` to $PATH
ENV PATH /app/node_modules/.bin:/app/src/node_modules/.bin:$PATH
# install and cache app dependencies
COPY package.json /app/package.json
RUN npm install --silent
RUN npm install react-scripts@3.0.1 -g --silent
RUN npm install axios -g
# start app
CMD ["npm", "start"]
诚然,关于Docker网络,我是一个新手,但我正在尝试让该react
应用程序与Docker 通信scraper-api
。例如,scraper- api
具有以下端点:/api/top_10
。我尝试了以下网址的各种排列: http://scraper- api:80/api/test_api
。他们都没有为我工作。
我一直在清理互联网,却找不到真正的解决方案。
React应用程序在最终用户的浏览器中运行,后者根本不知道这种“ Docker”是存在的,也不知道任何Docker
Compose网络设置。对于碰巧是由Docker托管的浏览器应用程序,需要将其配置为使用 主机的 DNS名称或IP地址以及后端服务的已发布端口。
一种常见的设置(Docker或其他方式)是将浏览器应用程序和后端应用程序都放置在反向代理之后。在这种情况下,您可以使用不带主机名的相对URL,例如/api/...
,它们将被解释为“相同的主机和端口”,从而完全绕开了此问题。
问题内容: 我的项目结构如下 我试图像这样从模块(即默认模块)导入, 但事实证明。但是我可以在内部实现相同的功能。请注意,我正在同时运行和文件。 问题答案: 部署后,GAE服务/模块不会在其模块目录(文件所在的目录)之外共享 任何内容。 因此,在dir(存在的地方)上方看不到任何东西,因此看不到。但是可以,因为模型位于其目录(存在)中。 如果需要,可以在内部进行符号链接,请参阅在App Engin
问题内容: 我正在通过docker compose中的选项。显然,您可以从容器或服务导入卷。从docker compose文档中是: volume_from 从另一个服务或容器挂载所有卷,可以选择指定只读访问(ro)或读写(rw)。 注意:仅版本2文件格式支持container:…格式。在版本1中,您可以使用容器名称而无需将其标记为: 我很困惑,这里的容器和服务有什么区别? 问题答案: 服务和容器
各位大佬们,当我在构建docker容器的时候意外遇到了这个错误,想问问各位如何解决 其中docker报错
本文向大家介绍微服务之间如何独立通讯的?相关面试题,主要包含被问及微服务之间如何独立通讯的?时的应答技巧和注意事项,需要的朋友参考一下 同步通信:dobbo通过 RPC 远程过程调用、springcloud通过 REST 接口json调用 等。
我编写了一个maven web服务,它引用了另一个项目。web服务本身仅包含2个pom条目: jersey容器servlet:2.13 web服务POM: 项目1也是一个maven项目,只有一个pom条目,另一个本地项目(我们称之为项目2)。 项目2又是一个maven项目,其pom文件包含5个条目: lang-猜测: 0.0.7 Stanford-corenlp: 3.5.2 斯坦福-科伦坡: 3
问题内容: 我在两个不同的文件夹中有两个单独的文件: 如何确保in中的容器可以将请求发送到in中的容器? 我知道可以为单个容器设置选项,以便可以为该容器分配特定的IP地址,但是使用时似乎没有此选项。 目前,我最终做了一个,然后查看输出中的网关。它可以工作,但问题是该IP是随机分配的,因此我不能依靠它。 因此,此问题的另一种形式可能是: 我可以使用docker-compose将固定IP地址分配给特定