GKE (二)

GKE 应用

经过昨天说的建立GKE想必应该已经有了自己的丛集了,那如何在GCP上去使用GKE呢?可以参考下图:
https://ithelp.ithome.com.tw/upload/images/20210828/20129516PyPb7ad2vZ.png

以这张图来说,可以透过Google上面的Container Registry储存空间去储存Image,使用Deployment部署使用服务,(至於关於详细Container Registry後面会在心得分享),这边会先说明如何将自己写的服务让他在GKE上运行首先可以写一个简单的golang Print "Hello World" 服务後再专案後写一个简单的Dockerfile 如下:

RUN mkdir -p /go/src/test

COPY ./ /go/src/test

WORKDIR /go/src/test

RUN cd /go/src/test && go build -o Test

ENTRYPOINT ["./Test"]

执行结果如下图:
https://ithelp.ithome.com.tw/upload/images/20210828/20129516LJYcRfPuPg.png

建立起Image後可以将其Image推向Container Registry这边设定成GCP私仓(这边因为会使用docker指令推向指定GCP上的私仓所以在IAM上需要开权限才可以使用以下指令)

docker tag  gcr.io/PROJECT_ID/test:latest gcr.io/PROJECT_ID/test:latest

docker push gcr.io/PROJECT_ID/test:latest

这时就可以在GPC上的Container Registry中看到本机建立的Image,後续只需要撰写Deployment Service即可apply上GKE大致如下(Deployment):

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-deployment
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
      - name: test
        image: test:latest

关於上述提到的部署方式可以说是就是k8s的部署方式,基本上可以完全的使用kubectl指令方式执行与查看:

kubectl apply -f test.yaml

kubectl get pod -n {namespace} |grep test-deployment

https://ithelp.ithome.com.tw/upload/images/20210828/201295169aewr7AlKw.png


<<:  Day10-Kind部署环境与测试

>>:  Day4_HTML语法1

【第十三天 - Flutter Sqflite+Provider】

前言 今日的程序码 => GITHUB 这篇将要介绍 Sqflite + Provider 的...

python 物件导向范例

class musashi: def __init__(self,name): self.__nam...

[Day05 - UI/UX] 为APP制作 LOGO

要开始画一个LOGO之前我习惯先简单列出一些主题文字。这次要做的是一个旅游包包整理APP所以我列出下...

Day-03 说明在 Ruby 里常数 (constant) 跟变数 (variable) 的差别是什麽?

其实在 Ruby 的世界里常数(constant)和变数(variable)两者的差别并不大! 他...

[Day - 11] - Spring 注入式之Resource原理与开发

Abstract 在第八天我们已得知既有的Autowird与Qualifier等常用的注入方式,今天...