我正在使用docker-compose构建一个小的烧瓶服务和它使用的数据库。我的docker-compose.yml如下所示:
version: '3.7'
services:
database:
image: postgres:10.5
restart: always
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
logging:
options:
max-size: 10m
max-file: "3"
ports:
- '5438:5432'
volumes:
- ./postgres-data:/var/lib/postgresql/data
- ./sql/schema.sql:/docker-entrypoint-initdb.d/schema.sql
web:
build: .
ports:
- "5000:5000"
depends_on:
- database
volumes:
- .:/code
environment:
- FLASK_APP=app.py
我的应用程序文件使用了另一个模块中的一些方法,我试图像往常一样导入这些方法,看起来如下所示
但是,在我使用
docker-compose up --build database web
在http://127.0.0.1:5000/上运行(按Ctrl+C退出)
将侦听IP地址更改为0.0.0.0
127.0.0.1
是localhost
中的容器,但不是主机的localhost
。您无法将容器的localhost
连接到容器外部
$ flask run --host=0.0.0.0
[server:main]
...
host = 0.0.0.0
port = 5000
...
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)
当在docker容器中实现Java应用程序和在自己的docker容器中配置的MySQL数据库以及Docker Comuse时,在使用jdbc创建到数据库的连接时,Java应用程序中总是会出现以下错误: 相应的Docker文件和Java代码如下所示:Docker compose。yml:版本:“3.7” Java中的JDBC连接: Dockerfile: 有人有或知道这个问题吗?谢谢你的回答。
在我们进行负载测试(使用jmeter)之前,一切都很好。当我们模拟100个并发用户时,在3-4分钟后。jmeter开始记录SocketException,连接重置。当我们检查应用程序日志(我们记录应用程序内部的所有异常)和系统事件时,我们什么也找不到。 我们没有对web层的性能采取任何特殊措施。但是在作为wcf应用程序的应用层上,我们使用了每次调用/多并发。我们在应用层上使用了以下配置: ...
当试图用docker-compose将我的express应用程序连接到mongo容器时,连接被拒绝。我可以使用localhost:27017和使用dbsetup.js的L/P设置连接到robo3T的db容器,但是当express试图连接时,我得到了一个错误:
这是我的: 和Dockerfile goparser: 连接MongoDB需要使用哪个地址?
我有一个使用Mongo数据库的Node express服务器。 我正在尝试使用为它们中的每一个创建一个容器。 这是我的
我想在一个容器中运行 RabbitMQ,在另一个容器中运行工作进程。工作进程需要访问 RabbitMQ。 我希望这些通过进行管理。 这是我的<代码>docker compose。迄今为止,yml文件: 所以我暴露了RabbitMQ端口。工作进程使用以下URL访问RabbitMQ: 这是他们在官方教程中使用的,但是已被替换为,因为容器应该可以使用与容器名称相同的主机名来发现: 默认情况下,“合成”会