Confusing Configuration of External Database
I'm attempting to configure GitLab to run in a Docker container with an external AWS RDS database and had a stumbling block I think is worth calling out and trying to identify the appropriate solution for. I was reading through this page where it calls out the DATABASE_URL
as overriding the individual database configuration values.
I configured that with the AWS RDS connection information and then ran the https://docs.gitlab.com/ce/development/post_deployment_migrations.html
db migration mentioned on this page. That worked and created objects in my external database.
However when I went to create Projects and Issues in the GitLab UI it was not saving to my AWS RDS but instead still using the embedded Postgres. After some trial and error (and googling) I found this page that talks about disabling the internal db and referencing the individual properties of the ruby config file. I changed those (including the not-mentioned db_database
property) and now things are working.
I think it's either a bug that the database url is not overriding those properties or an error in the documentation and it should be more clear about when it overrides and when it does not. Or maybe be more clear about what overriding means? Not sure exactly what the best solution is but feels like something is missing.