diff options
| author | Kevin J Hoerr <kjhoerr@protonmail.com> | 2021-09-09 14:57:55 -0400 |
|---|---|---|
| committer | Kevin J Hoerr <kjhoerr@protonmail.com> | 2021-09-09 14:57:55 -0400 |
| commit | 327d69b2fa273e6f708035db6f9f6df73ac07b0b (patch) | |
| tree | 2313b127d8ff10d49ce0ebbc962d24c2c42122e9 | |
| parent | 6f77a3c75f40b5327623ac99b1036b6e37c56480 (diff) | |
| download | submelon.dev-327d69b2fa273e6f708035db6f9f6df73ac07b0b.tar.gz submelon.dev-327d69b2fa273e6f708035db6f9f6df73ac07b0b.tar.bz2 submelon.dev-327d69b2fa273e6f708035db6f9f6df73ac07b0b.zip | |
Commit k8s deployment config
| -rw-r--r-- | README.md | 37 | ||||
| -rw-r--r-- | kubernetes/deployment.yaml | 49 |
2 files changed, 83 insertions, 3 deletions
@@ -4,16 +4,16 @@ ### Using Docker -The Dockerfile works via a fresh clone, no pre-build is needed. It can be tagged as follows: +The Dockerfile works via a fresh clone, no pre-build or npm install is needed. It can be tagged as follows: ``` -docker build -t registry.digitalocean.com/submelon-tech/submelon.tech:latest . +docker build -t registry.digitalocean.com/submelon-tech/submelon.tech:1.0.0 . ``` Or if using M1/ARM, ``` -docker buildx build --platform linux/amd64 -t registry.digitalocean.com/submelon-tech/submelon.tech:latest . +docker buildx build --platform linux/amd64 -t registry.digitalocean.com/submelon-tech/submelon.tech:1.0.0 . ``` If the build fails in error as a result of the image, the base gatsby images can be rebuilt. (The gatsby images as exist on Dockerhub do not work.) To rebuild those images, run the following commands: @@ -37,3 +37,34 @@ docker buildx build --platform linux/amd64 -t gatsbyjs/gatsby:latest -f Dockerfi ``` And then attempt rebuild of the submelon.tech image. + +#### Authenticating with DO + +Install `doctl`. Create an access token via DO's web interface to authenticate with the registry, and connect docker: + +``` +doctl auth init +doctl registry login +``` + +Then push the image to the registry: + +``` +docker push registry.digitalocean.com/submelon-tech/submelon.tect:1.0.0 +``` + +#### DO K8s Deployment + +``` +doctl k8s cluster cfg save k8s-1-13-1-do-2-nyc1-1547908941746 + +## + +kubectl config use-context do-nyc1-k8s-1-13-1-do-2-nyc1-1547908941746 +``` + +Make version/environment changes to deployment config file, and apply: + +``` +kubectl apply -f kubernetes/deployment.yaml +```
\ No newline at end of file diff --git a/kubernetes/deployment.yaml b/kubernetes/deployment.yaml new file mode 100644 index 0000000..39e20df --- /dev/null +++ b/kubernetes/deployment.yaml @@ -0,0 +1,49 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + creationTimestamp: "2021-04-22T06:20:12Z" + labels: + k8s-app: submelon-tech + name: submelon-tech + namespace: default + uid: 60ce2fb5-2fc4-4909-858c-fb76be2ecdf4 +spec: + progressDeadlineSeconds: 600 + replicas: 1 + revisionHistoryLimit: 10 + selector: + matchLabels: + k8s-app: submelon-tech + strategy: + rollingUpdate: + maxSurge: 25% + maxUnavailable: 25% + type: RollingUpdate + template: + metadata: + labels: + k8s-app: submelon-tech + name: submelon-tech + spec: + containers: + - image: registry.digitalocean.com/submelon-tech/submelon.tech:1.0.0 + imagePullPolicy: Always + name: submelon-tech + resources: + requests: + cpu: 250m + memory: 64Mi + limits: + memory: 128Mi + cpu: 500m + securityContext: + privileged: false + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + dnsPolicy: ClusterFirst + imagePullSecrets: + - name: doreg + restartPolicy: Always + schedulerName: default-scheduler + securityContext: {} + terminationGracePeriodSeconds: 30 |
