Memulai DOKS

  1. Buat cluster baru. Karena untuk belajar buat dengan 1 server saja

  2. Ikutin cara di “Getting Started”, jangan lupa juga install kubectl

kubectl --kubeconfig=k8s-XX-do-2-sgp1-XX-kubeconfig.yaml get nodes
  1. Cek node dengan
kubectl get nodes
  1. Buat deployment dengan image PHP dari trafex/php, php-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: php-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: php
  template:
    metadata:
      labels:
        app: php
    spec:
      containers:
        - name: php
          image: trafex/php-nginx
          ports:
            - containerPort: 8080
  1. Buat service, php-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: php-service
spec:
  type: LoadBalancer
  ports:
    - port: 80
      targetPort: 8080
  selector:
    app: php
  1. Jalankan kubectl apply -f php-deployment.yaml dan kubectl apply -f php-service.yaml

  2. Cek deployment

kubectl get deployments
kubectl get pods
kubectl get services
  1. Dapatkan IP public & port app (otomatis akan setup Load Balancer di Digital Ocean)
kubectl get services php-service
  1. Port forwarding di local laptop (bisa di akses di localhost:8080)
kubectl port-forward service/php-service 8080:8080
Buka di Browser localhost:8080

Buka di Browser localhost:8080


Useful Commands

#check pods logs
kubectl get pods
kubectl logs <pod-name>

#check pod detail
kubectl describe pod <pod-name>

#clean up resource
kubectl delete -f php-deployment.yaml