Docker Swarm: результаты развертывания стека докеров на непомеченных изображениях <none> - PullRequest
0 голосов
/ 03 мая 2018

Я размещаю некоторые изображения из своего реестра на сервере приложений, используя режим docker swarm hos t:

Мое изображение в реестре выглядит так (выполняется docker images):

REPOSITORY                                                 TAG                   IMAGE ID            CREATED            SIZE
localhost:5000/myApp                                       G02R00C09_myTag   c1fc2242f9a0        2 hours ago         272MB

В мой файл создания докера , мой сервис выглядит так:

---
version: '3.4'
services:
  ihm:
    image: myRegistryServer:5000/myApp:G02R00C09_myTag   
    stdin_open: true
    volumes:
    - /opt/logs:/opt/logs
    tty: true
    ports:
      - target: 80
        published: 80
        protocol: tcp
        mode: host
    deploy:
      mode: global
      placement:
        constraints:
          - node.labels.type == abc
    healthcheck:
      disable: true

-> после выполнения docker stack deploy:

мой стек и мой сервис работают нормально (когда я запускаю docker stack ls и docker service ls, все в порядке)

-> но при запуске docker images я получаю свое изображение , но с тегом <none> :

image:  myRegistryServer:5000/myApp      <none> 

1 Ответ

0 голосов
/ 04 мая 2018

Это нормально. При использовании Swarm Stacks он преобразует ваш тег в SHA256 этого изображения и загружает этот конкретный идентификатор. Это гарантирует, что каждый узел имеет одинаковое изображение. Если бы он зависел только от тега, вы могли бы повторно использовать тег в docker push, и разные узлы могли загружать разные изображения.

Вы можете увидеть тег, используемый в docker service ls или docker stack ps <stackname>

...