如何使用PyCharm在Docker中调试Odoo应用程序

aiqt4smr  于 2023-06-22  发布在  Docker
关注(0)|答案(1)|浏览(251)

DockerFile

FROM odoo:12.0

# Setup with root
USER root

# Set default user when running the container
USER odoo

# Copy source code to image
COPY ./addons/ /mnt/extra-addons/

EXPOSE 8069

docker-compose.yml

version: '3.2'
services:
  odoo:
    build: .
    depends_on:
      - db
    ports:
      - "8069:8069"
    environment:
      - HOST=db
      - USER=odoo
      - PASSWORD=myodoo
      - ENV=test
    entrypoint: ['/entrypoint.sh', '--database=odoo', '--dev=all']
    volumes:
      - ./addons:/mnt/extra-addons
      - ./var:/var/lib/odoo
  db:
    image: postgres:10
    ports:
      - "5433:5432"
    environment:
      - POSTGRES_DB=odoo
      - POSTGRES_USER=odoo
      - POSTGRES_PASSWORD=myodoo

如何使用PyCharm在Docker中调试Odoo应用程序?

but5z9lq

but5z9lq1#

要使用PyCharm调试在Docker容器内运行的Odoo应用程序,您可以按照以下步骤操作:
1.在PyCharm中打开Odoo项目。
1.确保您在PyCharm中安装了Docker集成插件。您可以通过转到“设置/首选项”->“插件”并搜索“Docker”来检查这一点。如果没有安装,请安装它并重新启动PyCharm。
1.在PyCharm中设置Docker Python解释器:a.进入“设置/首选项”->“项目”->“Python解释器”。B.点击齿轮图标并选择“添加”。c.选择“Docker”并选择运行Odoo应用程序的Docker容器(例如,odoo_odoo_1)。d. PyCharm会自动检测Docker容器内的Python解释器。
1.配置Docker容器以暴露调试端口:a.编辑docker-compose.yml文件。B.将以下环境变量添加到odoo服务中:

environment:
  - HOST=db
  - USER=odoo
  - PASSWORD=myodoo
  - ENV=test
  - PYCHARM_DEBUG=1

c.保存文件。

  • 配置PyCharm以将调试器附加到Docker容器:a.转到“运行”->“编辑配置”。B.单击“+”图标并选择“Python Remote Debug”。c.设置以下值:
  • 名称:输入配置的名称(例如,“Odoo Debug”)。
  • 主机:0.0.0.0(允许来自任何IP的连接)。
  • 端口:5678(或您喜欢的任何其他端口号)。d.保存配置。
  • 启动Odoo应用程序和调试器:a.在终端中,导航到包含docker-compose.yml文件的目录。B.运行docker-compose up -d启动Docker容器。c.在PyCharm中,选择您创建的“Odoo Debug”配置。d.点击“Debug”按钮启动调试器,并将其附加到Docker容器。
  • 在你的Odoo代码中设置断点,你希望调试器停止的地方。
  • 触发Odoo应用程序的执行以命中断点。
  • PyCharm中的调试器将在断点处停止,您可以检查变量,单步执行代码,并像往常一样进行调试。

记住从docker-compose.yml文件中删除PYCHARM_DEBUG=1环境变量,并在完成调试后重新启动Docker容器,以便在不进行调试的情况下正常运行应用程序。
注意:请确保您在Docker容器中安装了必要的代码和依赖项,如docker-compose.yml文件所示。

相关问题