微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 Skaffold 挂载 docker 配置文件?

如何解决如何使用 Skaffold 挂载 docker 配置文件?

我想使用 Prometheus 映像将容器部署为本地部署的一部分。通常必须使用 volume and bind-mount 运行容器才能将配置文件 (prometheus.yml) 放入容器:

docker run \
    -p 9090:9090 \
    -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
    prom/prometheus

在使用 Skaffold 时如何通过 Kubernetes 实现这一点?

解决方法

您的 Kubernetes 配置将是这样的, 您可以指定端口号和卷安装。挂载的重要部分是 volumeMountsvolumes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-prom
spec:
  selector:
    matchLabels:
      app: my-prom
  template:
    metadata:
      labels:
        app: my-prom
    spec:
      containers:
      - name: my-prom
        image: prometheus:latest
        resources:
          limits:
            memory: "128Mi"
            cpu: "500m"
        ports:
        - containerPort: 9090
        volumeMounts:
          - name: prom-config
            mountPath: /path/to/prometheus.yml
      volumes:
        - name: prom-config
          hostPath:
              path: /etc/prometheus/prometheus.yml
---
apiVersion: v1
kind: Service
metadata:
  name: my-prom
spec:
  selector:
    app: my-prom
  ports:
  - port: 9090
    targetPort: 9090

将 Kubernetes 配置文件保存在一个文件夹中,并将下面的配置添加到 skaffold.yaml 并带有 K8s 配置文件的路径,

deploy:
  kubectl:
    manifests:
    - k8s/*.yaml

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。