我觉得我已经接近让docker-compose和node-inspector一起玩得很好,但是如果有人可以告诉我他们如何设置docker-compose文件以及其工作原理的说明,我将非常乐意。

这是其中仅包含节点应用程序的compose.yml文件的外观:

  app:
    image: my-node-app
    volumes:
     - '~/mycode:/app/code'
    ports:
     - "3000:3000"
    command: /bin/bash

另请注意,我正在使用适用于Mac的Docker。 (尽管我认为应该不会有太大改变。)

我找到了一些教程,以获取有关操作方法的信息,但信息要么过时,要么似乎不完整。这是两种主要方法(对我来说都无效):

1)来自:https://github.com/seelio/node-inspector-docker/issues/1
app:
    image: my-node-app
    ports:
     - "3000:3000"
    command: /bin/bash
    volumes_from:
     - code
debugger:
    image: node-debug
    depends_on:
      - app
    # `service` instead of `container` for an easier cold start
    network_mode: 'service:app'
    volumes_from:
      - code
code:
    image: node
    volumes:
     - '~/mycode:/app/code'

2)

来自:https://keylocation.sg/our-tech/debugging-nodejs-in-docker-using-node-inspector:
 debugger:
    container_name: debugger
    network_mode: host
    extends:
      service: base
    volumes:
      - /app/containers/debugger:/app/container


 node-app:
    ports:
      - "5858:5858" # Port needs to be mapped to host so that debugger container can access it

最佳答案

您必须在应用程序Dockerfile中添加EXPOSE 5858EXPOSE 9229

10-08 02:56