Welcome to the Linux Foundation Forum!

Lab 3.2 port-forwarding to example app fails

Posts: 3
edited June 2024 in LFS256 Class Forum

In Lab 3.2, at Step 4 trying to access the deployed application using the following command:

kubectl port-forward svc/argocd-example-app-service 9090:3000

and trying to access to http://localhost:9090/, it crashes after 1st or following attempts with the following message:

  1. $ kubectl port-forward svc/argocd-example-app-service 9090:3000
  2. Forwarding from 127.0.0.1:9090 -> 3000
  3. Forwarding from [::1]:9090 -> 3000
  4. Handling connection for 9090
  5. E0604 19:10:22.343701 437481 portforward.go:409] an error occurred forwarding 9090 -> 3000: error forwarding port 3000 to pod 93f214d64df6a844543a6c6ddcbda3c327c799adecddbdb749d88d8ab4524f9c, uid : failed to execute portforward in network namespace "/var/run/netns/cni-82f4f592-8524-2180-8043-324a3e202f67": failed to connect to localhost:3000 inside namespace "93f214d64df6a844543a6c6ddcbda3c327c799adecddbdb749d88d8ab4524f9c", IPv4: dial tcp4 127.0.0.1:3000: connect: connection refused IPv6 dial tcp6 [::1]:3000: connect: connection refused
  6. error: lost connection to pod

This happens with a local kind cluster (kind v0.23.0) with k8s v1.29 using Manjaro Linux as OS.

From my experience with other similar cases, this happens when the container image (in this case liquidreply/argocd-example-app) is missing some configuration at the Dockerfile/Containerfile.

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Comments

  • Posts: 3

    On the other hand, I used another guestbook application from github.com/argoproj/argocd-example-apps and the port-forward command works well without issues.

  • I'm experiencing the same. Did anyone figure out the root cause?

  • Posts: 1

    The container port ist not 3000, it is 80, see: https://github.com/lftraining/LFS256-code/pull/5/files

  • Thank you, mabo. I changed the forked repo, and it worked like a charm!

  • I'm also experiencing this, and wasted 30 minutes troubleshooting it. It's a pity that it is still not changed in the LAB Guide.

  • +1 I came across this! Thanks

    Using the forked repo will work - the owner should merge that.

    You can see it's port 80 like this

    1. % kubectl exec -it argocd-example-app-75d498548c-9z49t -- netstat -tuln
    2. Active Internet connections (only servers)
    3. Proto Recv-Q Send-Q Local Address Foreign Address State
    4. tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
    5. tcp 0 0 :::80 :::* LISTEN

    And you can patch it in-situ like this
    ``
    kubectl patch service argocd-example-app-service -n default --type='json' -p='[{"op": "replace", "path": "/spec/ports/0/targetPort", "value": 80}]'
    ```

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training