10 ms·
This seems like the product-market fit.... In the 10 minutes since reading your comment, I breezed through documentation, downloaded the CLI, authenticated, tw
by diceduckmonk 4y ago
This seems like the product-market fit....
In the 10 minutes since reading your comment, I breezed through documentation, downloaded the CLI, authenticated, tweaked the code in 2 places: (1) the ENV variable key for the Postgres url and (2) the port of the app from 3000 to 8080. Ran `go build` and in theory, based on the way we structured our app, the one Go binary file is ready to go. I have confidence this might "just work", compared to the 3 hours I already sunk into GCP and who knows how much longer.
However, I'm blocked on needing credit card access / friction to proceed further due to my overseas CC. Would be great if someone from Fly.io is reading this and can provide free credits ( in exchange for user research ).
We'll see how pricing scales. Maybe GCP/AWS scales at higher scale, but the minimum requirements of GCP to run this single "serverless" container has already involved provisioning half a dozen VMs ( the VPC connector alone needs a minimum of 2. This feels like GCP's problem rather than the customers if they are promoting uploading a container and it "just works". ).
- verdverm 4y agoYou might want to slow down & step back from the problem at hand. Go through basic cloud & DevOps tutorials. There is no need for VMs in a CloudRun + CloudSQL setup. (technically the sql has a VM, but that is abstracted and won't be in your list) Or another way, you should see zero VMs running, no VPC connector is needed.
- diceduckmonk 4y agoUPDATE: Indeed, it turns out that the issue is I built the Docker container on an M1 and CloudRun only works if you built your container with "--platform linux/amd64" ====== > no VPC connector is needed. That's not true. It's enough that Google has released 2 forms of docs on this matter. Additionally, the webform to provision CloudRun also includes a section on VPC Connectors. You need to provision a VPC connector in order for CloudRun, Functions or App Engine to "see" CloudSQL with private IP. https://codelabs.developers.google.com/connecting-to-private-cloudsql-from-cloud-run#0 https://codelabs.developers.google.com/connecting-to-private... The VPC connector is a product which is backed by VMs. Its provisioning / validation rules require at least 2 VMs. You can see the web form yourself: https://console.cloud.google.com/networking/connectors/add?project=$YOUR_PROJECT_ID https://console.cloud.google.com/networking/connectors/add?p... > but that is abstracted and won't be in your list Yes, that's abstracted but you are billed for the vCores. You can see the price sheets and minimum monthly costs here: https://cloud.google.com/sql/pricing https://cloud.google.com/sql/pricing In the case of CloudSQL, sure, it's abstracted, but CloudRun is revealing its leaky abstraction. Here are implementation details you have to know about: https://cloud.google.com/run/docs/container-contract https://cloud.google.com/run/docs/container-contract. For example, it seems my issue could be related to building the container on an M1 mac. https://stackoverflow.com/questions/66127933/cloud-run-failed-to-start-and-then-listen-on-the-port-defined-by-the-port-envi https://stackoverflow.com/questions/66127933/cloud-run-faile...