Как развернуть контейнер с помощью docker -составить в облако Google? - PullRequest
0 голосов
/ 11 апреля 2020

Я довольно новичок в GCP и использую в основном AWS. В настоящее время я пытаюсь поэкспериментировать с GCP и хочу развернуть контейнер, используя docker-compose.

Я настроил очень простой c docker -compose.yml файл следующим образом:

# docker-compose.yml
version: '3.3'

services:
  git:
    image: alpine/git
    volumes:
      - ${PWD}:/git
    command: "clone https://github.com/PHP-DI/demo.git"

  composer:
    image: composer
    volumes:
      - ${PWD}/demo:/app
    command: "composer install"
    depends_on:
      - git

  web:
    image: php:7.4-apache
    ports:
      - "8080:${PORT:-80}"
      - "8000:${PORT:-8000}"
    volumes:
      - ${PWD}/demo:/var/www/html
    command: php -S 0.0.0.0:8000 -t /var/www/html
    depends_on:
      - composer

Таким образом, контейнер получит код из git, затем установите зависимости, использующие composer и, наконец, будут доступны на порту 8000.

На моей машине запуск docker-compose up делает все. Тем не менее, как pu sh это docker -составить в облако Google.

Я пытался создать контейнер, используя изображение docker/compose и файл Docker следующим образом:

FROM docker/compose

WORKDIR /opt
COPY docker-compose.yml .

WORKDIR /app
CMD docker-compose -f /opt/docker-compose.yml up web

Затем пу sh контейнер в реестр. И оттуда я попытался развернуть на:

  1. облачный запуск - не работал, так как я не мог найти способ указать подключенный том для /var/run/docker.sock
  2. Kubernetes - я установил docker.sock но я получаю сообщение об ошибке в журналах, что /app из службы git только для чтения
  3. вычислительный движок - та же ошибка, что и выше

я не Я хочу создать контейнер, скопировав в него все локальные файлы, а затем загрузить его, поскольку зависимости могут быть очень большими, что делает тяжелый контейнер для pu sh.

У меня есть рабочий docker -композит и просто хочу использовать его на GCP. Какой самый простой способ?

Ответы [ 2 ]

1 голос
/ 12 апреля 2020

Взгляните на Композит . Это может помочь вам преобразовать docker составьте инструкции в спецификацию c Kuberenetes для развертывания и служб. Затем вы можете применить файлы Kubernetes к своим кластерам GKE. Обратите внимание, что вам придется сначала создать контейнеры и сохранить их в Реестре контейнеров и соответствующим образом обновить тег изображения в определениях сервисов.

0 голосов
/ 12 апреля 2020

Compute engine - это, по сути, виртуальная машина, поэтому просто войдите в систему с помощью s sh и установите docker и docker -compose. После этого docker-compose up будет работать без проблем, как на вашей локальной машине.

...