I'm new to helm and Kubernetes world. I'm working on a project using Docker, Kubernetes and helm in which I'm trying to deploy a simple Nodejs application using helm chart on Kubernetes.
Here's what I have tried:
From Dockerfile
:
FROM node:6.9.2
EXPOSE 30000
COPY server.js .
CMD node server.js
I have build the image, tag it and push it to the docker hub repository at: MY_USERNAME/myhello:0.2
Then I run the simple commad to create a helm chart as:
helm create mychart
It created a mychart directory witll all the helm components.
Then i have edited the values.yaml
file as:
replicaCount: 1
image:
repository: MY_USERNAME/myhello
tag: 0.2
pullPolicy: IfNotPresent
nameOverride: ""
fullnameOverride: ""
service:
type: NodePort
port: 80
externalPort: 30000
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
paths: []
hosts:
- chart-example.local
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
After that I have installed the chart as:
helm install --name myhelmdep01 mychart
and when run kubectl get pods
it shows the ErrImagePull
I have tried with by mentioning the image name as : docker.io/arycloud/myhello
in this case the image pulled successfully but there's another error comes up as:
Liveness probe failed: Get http://172.17.0.5:80/: dial tcp 172.17.0.5:80: connect: connection refused