Kubernetes запускает команду оболочки в контейнере развертывания - PullRequest
1 голос
/ 05 мая 2020

Можно определить команды в Kubernetes для развертывания, которые должны выполняться сразу после создания развертывания?

например:

cd opt/
wget xxxxxx
mkdir new/

Я не нашел никакого решения к этой проблеме до сих пор.

Есть ли другой способ получить этот эффект?

1 Ответ

1 голос
/ 05 мая 2020

Это можно сделать так:

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: example
  name: example
spec:
  replicas: 1
  selector:
    matchLabels:
      app: example
  strategy: {}
  template:
    metadata:
      labels:
        app: example
    spec:
      containers:
        - image: busybox
          command: ["/bin/sh"]
          args: ["-c", "cd opt/ &&  wget xxxxxx && mkdir new/ && process-that-keeps-container-running"]
          name: busybox

Это немного сложно, так как в конце аргументов команды вам нужно будет поместить команду, которая поддерживает работу контейнеров. Если вы не знаете, какой именно, вам нужно будет посмотреть на CMD и ENTRYPOINT изображения Docker, которое вы используете.

...