Я довольно новичок в 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 контейнер в реестр. И оттуда я попытался развернуть на:
- облачный запуск - не работал, так как я не мог найти способ указать подключенный том для
/var/run/docker.sock
- Kubernetes - я установил
docker.sock
но я получаю сообщение об ошибке в журналах, что /app
из службы git только для чтения - вычислительный движок - та же ошибка, что и выше
я не Я хочу создать контейнер, скопировав в него все локальные файлы, а затем загрузить его, поскольку зависимости могут быть очень большими, что делает тяжелый контейнер для pu sh.
У меня есть рабочий docker -композит и просто хочу использовать его на GCP. Какой самый простой способ?