By mamedov
How components inside Digital Ocean Apps platform should reach each other via network? For example, I have 2 components, one is worker, another one is plain nginx with proxy_pass configuration to worker. I am referring to service names while using docker compose. What should I use here?
Docker compose file:
version: "3"
services:
tileserver:
build: .
frontend:
build: frontend
ports:
- "8080:80"
depends_on:
- tileserver
Inside frontend there is nginx.conf file with the following:
...
proxy_pass http://tileserver;
...
Here is how it looks for my digital ocean apps platform spec:
name: maps
region: ams
services:
- dockerfile_path: frontend/Dockerfile
source_dir: frontend/
github:
branch: m/mbtiles
deploy_on_push: true
repo: digitaz/maps
http_port: 80
instance_count: 1
instance_size_slug: basic-xxs
name: frontend
routes:
- path: /
workers:
- dockerfile_path: Dockerfile
github:
branch: m/mbtiles
deploy_on_push: true
repo: digitaz/maps
instance_count: 1
instance_size_slug: basic-xxs
name: tileserver
How containers tileserver and frontend should reach each other? Specifically, how frontend should reach tileserver?
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Hello, you can create “internal services” by using internal_ports property in the app spec and without having an http_port property.
name: sample-golang
services:
- name: intsvc1
github:
repo: digitalocean/sample-golang
branch: master
internal_ports:
- 3000
The internal service should be addressable with just the component name, example http://intsvc1:3000. Here’s a quick and simple example repo with code and app spec that demonstrates the concepts.
So in you setup, the tileserver component should be a service that exposes port using internal_ports property, and the nginx config can proxy pass to that address as appropriate.
Hopefully this helps!
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.