当涉及到 docker-compose、Dockerfile 以及 GCP 的服务 Cloud Run 的工作原理时,我有一个很大的理解问题。这使我无法在我拥有的项目中取得进展,而且我几乎无所事事可尝试。
我有一个 docker-compose.yml 文件,内容如下:
version: '2'
services:
# The Application
app:
container_name: laravel_app
build:
context: ./
dockerfile: docker/app.dockerfile
volumes:
- ./storage:/var/www/storage
# The Web Server
web:
container_name: nginx_server
build:
context: ./
dockerfile: docker/web.dockerfile
volumes:
- ./storage/logs/:/var/log/nginx
ports:
- 8080:80
Run Code Online (Sandbox Code Playgroud)
如您所见,它非常简单,有两种服务,一种用于带有 php 的应用程序,另一种用于服务器。两者都有自己的 dockerfiles 并且构建是正确的。在本地一切正常,没有问题。
我现在想在 GCP 上的 Cloud Run 服务中部署这些服务。在挖掘之后,我发现可能只能使用单个Dockerfile. 有没有办法将 docker-compose.yml 容器部署到 Cloud Run?我应该使用其他服务吗?
docker google-cloud-platform docker-compose google-cloud-run