2 years ago
I am using the unit:php8.2 docker image to deploy a Laravel application. I used MYSQLPRIVATEURL variable to connect to the database but I get the error "SQLSTATE[HY000] [2002] phpnetworkgetaddresses: getaddrinfo for mysql.railway.internal failed: nodename nor servname provided, or not known"
24 Replies
2 years ago
f89ef06b-231c-4edf-a893-25cbf3c4902b
2 years ago
is that an alpine based image?
2 years ago

2 years ago
I think it's based on debian
2 years ago
please add a 3 second sleep / delay before you connect to the database
2 years ago
I tried it but it still has the same problem, in fact, minutes after the deployment I tried to execute:
railway run sh -c "ping mysql.railway.internal"
but I get:
"ping: cannot resolve mysql.railway.internal: Unknown host"
2 years ago
railway run runs the given command locally
2 years ago
Oh, i'm adding the sleep in my Dockerfile.
2 years ago
please show me how you are implementing the sleep
2 years ago

2 years ago
looks good
2 years ago
I don't have the host resolution issue, but apparently there is a restriction for a query in the migration:
SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select tablename as name, (datalength + indexlength) as size, tablecommentas comment, engine as engine, tablecollation as collation from informationschema.tables where tableschema = 'forge' and tabletype in ('BASETABLE', 'SYSTEM VERSIONED') order by table_name)
2 years ago
is your database in the same project as this app?
2 years ago
Yeah.

2 years ago
railway does not place any such restrictions on the databases besides the amount of resources it can use (cpu / mem /disk based on your plan type)
2 years ago
are these logs coming from the build or deploy logs
2 years ago
Deply logs
2 years ago
Are the env vars availables in build stage?
2 years ago
yes but the private network is not
2 years ago
It just worked, I moved the "php artisan optimize" command which caches the configuration (includes the DB credentials) and maybe it was pointing to a non-existent database at the execution stage.
2 years ago
This is the final configuration.

2 years ago
awsome
2 years ago
How can we mark this as solved?
2 years ago
already have