2 years ago
Description: An easy to use, open-source, link shortener
Category: Other
7 Replies
2 years ago
Try to use the private network to connect to the database whenever possible, and use ${{secret(32)}} for the web password too!
2 years ago
Try to use the private network to connect to the database whenever possible, and use
${{secret(32)}}for the web password too!
Thanks for the feedback.
Definitely makes more sense to use private networking for the database; I'll make sure it works well in my project and update the template if it does.
Don't know why I didn't think to use
${{ secret(32) }}for the password as I use secret for the API key.
2 years ago
Private networking won't work with for the Postgres connection; the Shlink docker image doesn't seem to support IPv6 networking out of the box. This is a known issue for Shlink as they have a few tickets closed as stale that mention it.
I marked it as a known issue in my repo as well, updated the description for the template, and will see if I can resolve with a wrapper on their image down the line. The public network will have to do for now 😔
I did put the automatic password generation in place though. Thanks Brody 👍
2 years ago
it's an alpine-based image https://docs.railway.app/guides/private-networking#workaround-for-alpine-based-images
with that variable set, I was able to have shlink connect to the database via the private network without issue.
some additional feedback that I didn't think of before -
use health checks,
/rest/healthfor theShlinkservice and something would need to be added to the nginx config for the frontend to serve as a health check.use capital case service names, e.g
shlink->Shlink,slink web client->Slink Web Clientas it looks more professional (for lack of a better word)
2 years ago
with that variable set, I was able to have shlink connect to the database via the private network without issue.
Really? I've had to deal with Alpine images and private network before so I was aware of the variable. I set ENABLE_ALPINE_PRIVATE_NETWORKING=true and was still getting networking errors when talking to the database.
Was that, and changing the DB_HOST/DB_PORT variables in Shlink, the only changes you made?
Edit: I just got it working? afaik I did all of this yesterday and was getting generic host unreachable errors still. Must have messed up somewhere.