a month ago
I've got an Expression Engine website running on Digital Ocean right now, what would be the best way to migrate that to a Railway project?
2 Replies
Status changed to Open Railway • about 1 month ago
a month ago
Hello punchdrunk,
railway will auto-detect ee as a php app if you have an index.php in your root
and the default builder on railway is now railpack and it uses frankenphp + caddy , you can install the php extensions ee needs (gd, mysqli, pdo_mysql) by adding a RAILPACK_PHP_EXTENSIONS environment variable in your service settings. if you need to tweak server config you can drop a custom Caddyfile or php.ini in your project root. if frankenphp causes any compatibility issues with ee, just fall back to a custom dockerfile which gives you full control
for the database, add a mysql service directly from the railway project canvas and plug the connection variables railway gives you into your ee database.php config
Hope this help you :)
domehane
Hello **punchdrunk,** railway will auto-detect ee as a php app if you have an index.php in your root and the default builder on railway is now railpack and it uses frankenphp + caddy , you can install the php extensions ee needs (gd, mysqli, pdo\_mysql) by adding a RAILPACK\_PHP\_EXTENSIONS environment variable in your service settings. if you need to tweak server config you can drop a custom Caddyfile or php.ini in your project root. if frankenphp causes any compatibility issues with ee, just fall back to a custom dockerfile which gives you full control for the database, add a mysql service directly from the railway project canvas and plug the connection variables railway gives you into your ee database.php config Hope this help you :)
a month ago
a critical thing you cannot skip isthat railway's filesystem is ephemeral so uploaded images and files will get wiped on every redeploy. attach a railway volume and mount it to your ee uploads directory to keep files persistent
Status changed to Solved Railway • about 1 month ago