I have a pipeline with a service that needs to point it's url to the BITBUCKET_DOCKER_HOST_INTERNAL ip address so it can communicate with a database. The value of the variable needs to be set to a postgres url, I don't own this service and it doesn't look like I can split up the value into multiple variables. How would I define a variable for this in my service?
I've tried
DSN: "postgres://***:***@$BITBUCKET_DOCKER_HOST_INTERNAL:5432/***"
and
DSN: "postgres://***:***@${BITBUCKET_DOCKER_HOST_INTERNAL}:5432/***"
Hi @Jordan Davidson ,
welcome to the Atlassian community.
If I correctly grasp your question, this might be it:
If you need to communicate from a service running in docker to a service running in your build container, when starting the service provide it the following host entry using --add-host host.docker.internal:$BITBUCKET_DOCKER_HOST_INTERNAL you can then access the service using host.docker.internal:<port>.
As variable substitution does not work for service variables, this allows to replace the variable with the hostname (here: "host.docker.internal"):
DSN: "postgres://***:***@host.docker.internal:5432/***"
If I didn't fully understood your scenario so far, please share and also find more information in the reference/source:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.