Как развернуть приложение с помощью Docker Comose для Kubernetes - PullRequest
0 голосов
/ 27 февраля 2019

Я новичок в docker и kubernetes. У меня есть docker-compose.yml как

version: '2'
services:
  db:
    build:
      context: ./db
      dockerfile: Dockerfile
    ports:
      - "3306:3306"
    networks:
      docker-network:
        ipv4_address: 172.18.0.2
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: db
      MYSQL_USER: user
      MYSQL_PASSWORD: mypassword

  createlinuxuser:
    build:
      context: ./createlinuxuser
      dockerfile: Dockerfile
    networks:
      docker-network:
        ipv4_address: 172.18.0.3
    depends_on:
      - db
    tty: true
    restart: always

networks:
  docker-network:
    driver: bridge
    ipam:
     config:
       - subnet: 172.18.0.0/16  
         gateway: 172.18.0.1 

Я хочу развернуть это многоконтейнерное приложение докера с мостовой сетью между контейнерами в kubernetes.Я также хочу иметь Ip для обоих контейнеров на kubernetes, чтобы они могли общаться друг с другом, это возможно?Как лучше всего это делать?

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Другая функция, на которую вам, возможно, придется взглянуть, - это развертывание в kuberentes с использованием самого docker cli, как описано в развертывание стека докеров

  • Для использования этой команды API клиента и демона должно быть не менее 1,25

  • Команда deploy поддерживает файл compose версии 3.0 и выше.Поэтому вам может потребоваться обновить docker-compose.yml до версии v3

docker stack deploy --compose-file /path/to/docker-compose.yml mystack

Можно указать и другие параметры, например: --namespace, --kubeconfig

Также вы можете проверить Helm , который является менеджером пакетов для kubernetes, где вам нужно написать диаграмму helm для развертывания ее в кластере kubernetes

0 голосов
/ 07 марта 2019

Как сказал Дэвид Мэйз, могут быть некоторые проблемы с тем, чего вы хотите достичь.Определенно вы не сможете сразу использовать этот файл.Вы можете использовать Kompose для перехода из Docker Compose в Kubernetes или kompose convert .

Kompose поддерживает преобразование файлов V1, V2 и V3 Docker Compose вОбъекты Kubernetes и OpenShift.Но, как уже упоминалось, это, вероятно, потребует некоторых настроек.

Что касается вашей сети.Вам нужно несколько контейнеров в модуле или вы хотите развернуть его как отдельные модули?В этом случае прочтите документацию или некоторые статьи о Kubernetes Networking .

В терминах конструкций Docker Pod моделируется как группа контейнеров Docker, которые совместно используют пространство имен сети.Все контейнеры в модуле Pod имеют одинаковый IP-адрес и пространство портов, назначенные через пространство имен сети, назначенное модулю, и могут находить друг друга через localhost, поскольку они находятся в одном пространстве имен.

источник

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