推广 热搜: 京东  联通  iphone11  摄像头  企业存储  iPhone  XSKY  京东智能采购  网络安全  自动驾驶 

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

   日期:2021-11-09     来源:TechWeb编译    作者:itcg    浏览:330    我要评论    
导读:在本节中,我们将创建一个Compose 文件以使用单个命令启动我们的 python-docker 和 MySQL 数据库。

在本节中,我们将创建一个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

您应该会收到以下回复:

[]

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

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
0相关评论

头条阅读
推荐图文
相关资讯
网站首页  |  物流配送  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅  |  违规举报  |  京ICP备14047533号-2
Processed in 0.185 second(s), 11 queries, Memory 1.49 M