文章

Docker&K8s相关使用备忘

将Rancher与K8s集群绑定

Rancher界面 - 全局 - 添加集群 - 导入,点击创建后在K8s宿主机执行生成的第三条命令

快速新增负载均衡YAML模板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
apiVersion: v1  
kind: Service  
metadata:  
  name: redis-lb  
  namespace: default  
spec:  
  externalTrafficPolicy: Cluster  
  ports:  
  - name: 6379tcp02  
    port: 6379  
    protocol: TCP  
    targetPort: 6379  
  selector:  
    app: redis  
  sessionAffinity: None  
  type: LoadBalancer

快速新增工作负载YAML模板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
apiVersion: apps/v1  
kind: Deployment  
metadata:  
  name: openobserve  
spec:  
  selector:  
    matchLabels:  
      app: openobserve  
  strategy:  
    type: Recreate  
  template:  
    metadata:  
      labels:  
        app: openobserve  
    spec:  
      containers:  
      - image: openobserve/openobserve:v0.10.7  
        imagePullPolicy: IfNotPresent  
        name: openobserve  
        ports:  
          - containerPort: 5080  
            name: 5080tcp2  
            protocol: TCP  
        env:  
          - name: ZO_ROOT_USER_EMAIL  
            value: root@example.com  
          - name: ZO_ROOT_USER_PASSWORD  
            value: Complexpass#123  
          - name: ZO_DATA_DIR  
            value: /data  
        volumeMounts:
        - mountPath: /data
          name: data       
      nodeSelector:
        kubernetes.io/hostname: k3sserver              
      volumes:
      - hostPath:
          path: /opt/data/appdata/openobserve/data
          type: ""
        name: data              
      dnsPolicy: ClusterFirst  
      restartPolicy: Always  

kubectl命令记录

获取Pod的内存占用情况,其中Pod名称和命名空间名称都不是必传的:

1
kubectl top pod <Pod名称> -n <命名空间名称>

从Pod中复制文件:

1
kubectl cp <pod名称>:<容器内路径> <目标本地路径>

从本地拷贝文件至Pod:

1
kubectl cp -n $ns data/cert.csr $datahub_pod_name:/opt/emqx/etc/certs

docker命令记录

压缩镜像:

1
docker save your_image_name:tag | gzip > image.tar.gz

加载镜像:

1
gzip -dc image.tar.gz | docker load

查看特定容器的资源使用情况:

1
docker stats <container_id/name>

查看容器的资源使用情况,不需要实时更新:

1
docker stats --no-stream

让容器保持运行

1
2
command: ["/bin/sh"]
args: ["-c", "tail -f /dev/null"]
本文由作者按照 CC BY 4.0 进行授权