Create a namespace
kubectl --kubeconfig=./kubeconfig.yml create namespace prbox-api`openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -outform PEM -pubout -out public.pem
kubectl --kubeconfig=./kubeconfig.yml --namespace=prbox-api create secret generic prbox-api-jwt-secret \
--from-file=./private.pem \
--from-file=./public.pem
rm ./private.pem ./public.pem Make a new secrets config file and add your secrets
cp secrets.example.yml secrets.ymlkubectl --kubeconfig=./kubeconfig.yml apply -f ./k8s/secrets.ymldocker buildx build --platform linux/amd64 --push -t registry.digitalocean.com/ab-registry/prbox-api:latest .kubectl --kubeconfig=./kubeconfig.yml apply -f ./k8s/api.deployment.yml
kubectl --kubeconfig=./kubeconfig.yml apply -f ./k8s/api.service.ymldocker buildx build --platform linux/amd64 --push -t registry.digitalocean.com/ab-registry/prbox-api:latest . &&
kubectl --kubeconfig=./kubeconfig.yml -n prbox-api rollout restart deployment prbox-api && \
kubectl --kubeconfig=./kubeconfig.yml -n prbox-api get pods -wMigrate the DB
export POD="$(kubectl --kubeconfig=kubeconfig.yml --namespace=prbox-api get pods --field-selector=status.phase==Running --no-headers -o custom-columns=":metadata.name")"
kubectl --kubeconfig=./kubeconfig.yml --namespace=prbox-api exec -ti $POD -- /bin/bash -c 'sequelize db:migrate && sequelize db:seed:all'DigitalOcean tutorial: https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nginx-ingress-with-cert-manager-on-digitalocean-kubernetes
kubectl --kubeconfig=./kubeconfig.yml apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.1/deploy/static/provider/do/deploy.yaml
kubectl --kubeconfig=./kubeconfig.yml apply -f https://github.com/jetstack/cert-manager/releases/download/v1.15.1/cert-manager.yaml
kubectl --kubeconfig=./kubeconfig.yml get pods -n ingress-nginx -l app.kubernetes.io/name=ingress-nginx --watch
kubectl --kubeconfig=./kubeconfig.yml apply -f ./k8s/api.ingress.yml
kubectl --kubeconfig=./kubeconfig.yml get pods --namespace cert-manager
kubectl --kubeconfig=./kubeconfig.yml create -f ./k8s/prod-issuer.yml
kubectl --kubeconfig=./kubeconfig.yml get Issuers,ClusterIssuers,Certificates,CertificateRequests,Orders,Challenges --all-namespaces
export POD="$(kubectl --kubeconfig=kubeconfig.yml --namespace=prbox-api get pods --field-selector=status.phase==Running --no-headers -o custom-columns=":metadata.name")"kubectl --kubeconfig=kubeconfig.yml exec -ti $POD -- /bin/bash -c "sequelize db:migrate"kubectl --kubeconfig=kubeconfig.yml logs $PODkubectl --kubeconfig=kubeconfig.yml create job --from=cronjob/prbox-api-cron-job prbox-api-cron-jobkubectl --kubeconfig=kubeconfig.yml delete jobs --field-selector status.successful=0