Как обновить файл на kubernetes / docker? - PullRequest
0 голосов
/ 08 июля 2019

Я новичок в Docker / Kubernetes и унаследовал приложение, и я хочу обновить файл JAR на модуле.

Это стручок:

Name:           app-name-7c7fddfc7c-vthhr
Namespace:      default
Node:           ip-ip-address-goes-here.us-east-2.compute.internal/ip.address.goes.here
Start Time:     Sat, 06 Jul 2019 19:19:37 +0000
Labels:         app=app-name
                pod-template-hash=3739889737
Annotations:    kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"default","name":"app-name-7c7fddfc7c","uid":"d771243c-9992-11e8-ac11-0298f3...
Status:         Running
IP:             other.ip.address.here
Created By:     ReplicaSet/app-name-7c7fddfc7c
Controlled By:  ReplicaSet/app-name-7c7fddfc7c
Containers:
  app-name:
    Container ID:   docker://fefd826441f2d672c3e622727f6f3c26b9ece4e60c624b6dc96de6f8e97e336f
    Image:          remoteserver.com/app-name:1.24.237
    Image ID:       docker-pullable://remoteserver.com/app-name@sha256:5ffc7926e0437f89e7308b09514ec17cf0679fb20dbf97d78b307d7ee4fb13e2
    Port:           8080/TCP
    State:          Running
      Started:      Sat, 06 Jul 2019 19:19:52 +0000
    Ready:          True
    Restart Count:  0
    Limits:
      memory:  1200Mi
    Requests:
      cpu:     200m
      memory:  900Mi
    Environment:
      ...
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-nvwhs (ro)
Conditions:
  Type           Status
  Initialized    True
  Ready          True
  PodScheduled   True
Volumes:
  default-token-nvwhs:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-nvwhs
    Optional:    false
QoS Class:       Burstable
Node-Selectors:  <none>
Tolerations:     node.alpha.kubernetes.io/notReady:NoExecute for 300s
                 node.alpha.kubernetes.io/unreachable:NoExecute for 300s
Events:          <none>

Насколько я могу судить, ReplicaSet реплицирует серверы и тома монтирования, которые являются моментальными снимками Amazon.

Могу ли я просто ... загрузить файл в модуль и из-за того, что это подключенный том (мое предположение) - он будет обновлен навсегда? Я понимаю, как это работает точно?

Если мне не хватает информации для любого, кто является экспертом, знакомой с моим вариантом использования, я с радостью включу ее. Я просто не знаю, чего еще не знаю.

Ответы [ 2 ]

2 голосов
/ 08 июля 2019

Стручки эфемерны. Вы знаете, "Крупный рогатый скот против домашних животных". Их убивают, а не доставляют ветеринару.

Если вы хотите добавить новый код / ​​новые зависимости, вы создаете новый образ Docker и развертываете его в кластере.

Где-то в вашем коде / CI-конвейере есть файл Dockerfile, который определяет, какие / как зависимости добавляются в образ Docker. Начните там, затем перейдите к тому, что когда-либо существовал конвейер CI / CD для развертывания в кластере. Это может быть так просто, как скрипт, вызывающий kubeclt для применения изображения к кластеру.

0 голосов
/ 10 июля 2019

На основании ваших комментариев к предыдущему ответу

даже при выключении сервера и запуске нового, файлы сохраняются

, который вы ищете постоянные тома и, вероятно, вы хотите смонтировать ранее существующие постоянные диски как PersistentVolumes

Таким образом, каждый раз, когда будет создан новый модуль, у вас будет контейнер с подключенным томом, содержащийобновленные файлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...