Skip to content

Support for Postgres 18 #30

@ThallesP

Description

@ThallesP

If you really need a Postgres 18 instance, take a look at my template https://railway.com/deploy/postgresql-18. Please note that some features won't work, such as the data tab.

I was working on adding support for Postgres 18 but they've changed quite a few things regarding volume mount paths:

  1. They now recommend using a major version in the mount path, e.g., /var/lib/postgresql/18/docker. I would recommend using the new path, though I understand it might cause issues with previous versions and possibly with Railway's underlying architecture. Using the new path offers the benefit of easier upgrades according to their documentation.

  2. They've also changed the mount path to /var/lib/postgresql instead of /var/lib/postgresql/data. Not implementing this change results in issues:

/orchestrator.RouterLegacyService/StartDeployment UNKNOWN: crun: openat2 `var/lib/postgresql/data`: No such file or directory: OCI runtime attempted to invoke a command that was not found

I believe the Postgres 18 entrypoint or another dependency requires the volume to be mounted at /var/lib/postgresql. That will require the init scripts to support that new volume mount path and also Railway to change that.

My question is: should I implement both recommended changes (major version in path and new mount path) and have Railway adapt their approach, or should I implement only the new mount path, which appears to be the minimum requirement?

context:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions