互联网技术 / 互联网资讯 · 2024年3月17日

云计算核心技术Docker教程:本地开发中使用Python镜像的Compose

在本节中,我们将创建一个Compose文件以使用单个命令启动我们的Python-docker和MySQL数据库。我们还将设置Compose文件以Python-docker-dev在调试模式下启动应用程序,以便我们可以将调试器连接到正在运行的进程。

Python-docker在IDE或文本编辑器中打开该目录并创建一个名为docker-compose.dev.yml。将以下命令复制并粘贴到文件中。

version: ‘3.8’

services:

web:

build:

context: .

ports:

– 5000:5000

volumes:

– ./:/app

MySQLdb:

image: MySQL

ports:

– 3306:3306

environment:

– MYSQL_ROOT_PASSWORD=p@SSw0Rd1

volumes:

– MySQL:/var/lib/mysql

– MySQL_config:/etc/mysql

volumes:

– MySQL:

– MySQL_config:

这个Compose文件非常方便,因为我们不必键入要传递给docker run命令的所有参数。我们可以使用Compose文件声明性地做到这一点。

我们公开端口5000,以便我们可以访问容器内的开发Web服务器。我们还将我们的本地源代码映射到正在运行的容器中,以在我们的文本编辑器中进行更改,并在容器中获取这些更改。

使用Compose文件的另一个非常酷的功能是我们将服务解析设置为使用服务名称。因此,我们现在可以在连接字符串中使用“MySQLdb”。我们使用“MySQLdb”的原因是因为这是我们在Compose文件中命名我们的MySQL服务的原因。

现在,要启动我们的应用程序并确认它运行正常,请运行以下命令:

$ docker-compose -f docker-compose.dev.yml up –build

我们传递–build标志,以便Docker编译我们的图像,然后启动容器。

现在让我们测试我们的API端点。打开一个新终端,然后使用curl命令向服务器发出GET请求:

$ curl http://localhost:5000/initdb

$ curl http://localhost:5000/widgets

您应该会收到以下回复:

[]

这是因为我们的数据库是空的。

OpenMagic API

Need more than content? Move into the product flow.

If you are here for model access, pricing, developer docs, or the future API console, the dedicated product path now lives on api.openmagic.ai.