Ich würde mit HELM sehr empfehlen. https://github.com/kubernetes/helm
Sie können HELM mit den Informationen installieren, die im obigen Link enthalten sind. Damit steht Ihnen der Befehl helm
zur Verfügung.
Durch Ausführen von helm create YOUR_APP_NAME
wird eine Verzeichnisstruktur wie folgt erstellt.
YOUR_APP_NAME/
Chart.yaml # A YAML file containing information about the chart
LICENSE # OPTIONAL: A plain text file containing the license for the chart
README.md # OPTIONAL: A human-readable README file
values.yaml # The default configuration values for this chart
charts/ # OPTIONAL: A directory containing any charts upon which this chart depends.
templates/ # OPTIONAL: A directory of templates that, when combined with values,
# will generate valid Kubernetes manifest files.
templates/NOTES.txt # OPTIONAL: A plain text file containing short usage notes
In der values.yaml
Datei, die Sie einige ENV Variablen wie festlegen können:
container:
name: "nginx"
version: "latest"
In Ihrem ReplicationController
Datei können Sie die Variablen Referenzen:
apiVersion: v1
kind: ReplicationController
...
spec:
containers:
- name: myapp
image: {{.Values.container.name}}:{{.Values.container.version}}
...
Die YAML-Datei für Ihre Replikation Controller sollte in das Vorlagenverzeichnis platziert werden.
Sie können dann den Befehl helm package YOUR_PACKAGE_NAME
ausführen. Um das Paket auf Ihrem K8S zu installieren Cluster Sie dann helm install PACKAGE_NAME
HINWEIS laufen können: Ich würde vorschlagen, Sie zu verwenden Deployments
statt ReplicationController
wechseln. Siehe: https://kubernetes.io/docs/user-guide/deployments/