2016-12-12 3 views
0

Я запускаю мини-куб на моем mac для разработки/тестирования моих микросервисов локально. Мне было интересно, можно ли отладить мой NodeJS в миникубе через node-inspector? (другие инструменты также приветствуются). Я видел, что есть возможность использовать node-inspector, используя docker-compose, но так как я выполняю все свои услуги в k8s, я выбираю Minikube.Minikube - Debug NodeJS app

Спасибо, продвинутый!

ответ

0

Скажем у вас есть этот НПМ скрипт:

"dev": "concurrently -p \"[{name}]\" -n \"NODE INSPECTOR,NODEMON\" -c \"bgBlue.bold,bgGreen.bold\" \"node-inspector --web-port=8081 --debug-port=5860 --preload\" \"cross-env NODE_ENV=development nodemon ./node_modules/babel-cli/bin/babel-node.js --max-old-space-size=512 --debug=5860 ./index.js\"" 

узел-инспектор не работает на порту 8081.

Теперь в вашем kubernetes.yml вы могли бы иметь следующее:

--- 

apiVersion: extensions/v1beta1 
kind: Deployment 
metadata: 
    labels: 
    app: helloworld 
    name: helloworld 
    namespace: application 
spec: 
    replicas: 1 
    selector: 
    matchLabels: 
     app: helloworld 
    template: 
    metadata: 
     labels: 
     app: helloworld 
    spec: 
     containers: 
     - name: helloworld 
     imagePullPolicy: Always 
     image: fbgrecojr/hello-world:latest 
     ports: 
     - containerPort: 8080 
      protocol: TCP 
     - containerPort: 8081 
      protocol: TCP 

--- 

kind: Service 
apiVersion: v1 
metadata: 
    labels: 
    app: helloworld 
    name: helloworld 
    namespace: application 
spec: 
    type: NodePort 
    ports: 
    - port: 8080 
    protocol: TCP 
    nodePort: 30000 
    - port: 8081 
    protocol: TCP 
    nodePort: 30001 
    selector: 
    app: helloworld 

ваш приложение недоступно с $(minikube ip):30000, а инспектор узлов доступен от $(minikube ip):30000

+0

привет, спасибо, но я не понял вашего ответа ... –

+0

Привет, вы можете быть более конкретным, пожалуйста? –