Цель состоит в том, чтобы организовать как производственные, так и локальные среды разработки с использованием Kubernetes. Проблема в том, что hostPath
не работает с относительными значениями пути. Это приводит к слегка отличающимся конфигурационным файлам на каждой машине разработчика, чтобы они соответствовали различным местоположениям проекта (например, "/my/absolute/path/to/the/project"
):
apiVersion: v1
kind: Service
metadata:
name: some-service
labels:
app: app
spec:
type: LoadBalancer
ports:
- port: 80
selector:
app: app
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: some-deploy
spec:
selector:
matchLabels:
app: app
replicas: 1
template:
metadata:
labels:
app: app
spec:
containers:
- name: app
image: nginx:1.13.12-alpine
ports:
- containerPort: 80
volumeMounts:
- name: vol_example
mountPath: /var/www/html
volumes:
- name: vol_example
hostPath:
path: "/my/absolute/path/to/the/project"
type: Directory
Как относительные пути могут использоваться в конфигурационных файлах Kubernetes? Переменные замены (например, $(PWD)/project
) были опробованы, но, похоже, не работали. Если переменные конфигурации могут работать с томами, это может помочь, но не знать, как этого добиться.