No internet connection
  1. Home
  2. Issues

Problems starting rdb container - could not open configuration file "/var/lib/postgresql/conf/postgresql.conf"

By @mzafkismugi2021-03-11 19:02:53.310Z

So I was following https://github.com/debiki/talkyard-prod-one and when starting my rdb container dies with:

rdb_1     | 2021-03-11 18:56:34.606 GMT [1] LOG:  could not open configuration file "/var/lib/postgresql/conf/postgresql.conf": No such file or directory
rdb_1     | 2021-03-11 18:56:34.607 GMT [1] FATAL:  configuration file "/var/lib/postgresql/data/postgresql.conf" contains errors

much to my surprise the file does not exist within the container

root@blog:/opt/talkyard# docker-compose run --rm rdb /bin/bash
bash-4.4# ls /var/lib/postgresql/conf/postgresql.conf
ls: /var/lib/postgresql/conf/postgresql.conf: No such file or directory

I think that you wanted to include /var/lib/postgresql/data/postgresql.conf.orig instead of /var/lib/postgresql/conf/postgresql.conf

Solved in post #5, click to view
  • 4 replies
  1. KajMagnus @KajMagnus2021-03-12 04:11:14.205Z2021-03-12 04:25:33.082Z

    Oh I didn't push some changes in talkyard-prod-one to the master Git branch yet. I'll have a look and then I'll push to master.

    If you don't want to wait: There's another branch, in the talkyard-prod-one repo that you can use instead: w-km2. "w" here means "work in progress" and "km" means "kajmagnus", that is, my work in progress branch number 2.

    There wil be another change included too — namely auto HTTPS certs via a Lua plugin (so you won't need to generate any cert manually via certbot, although you can do that instead, should you want to).

    Details:

    The purpose with this change, was to make it simpler to edit & backup the PostgreSQL configuration (In particular, log levels) by keeping the config in the /opt/talkyard/conf/ directory on the host (where it gets included in the daily backups).

    Previously, thew whole config file was in /var/lib/postgresql/data/postgresql.conf in the container, but in February I changed it to just this: include '/var/lib/postgresql/conf/postgresql.conf',
    (for new installations only, won't affect already existing installations),
    meaning, the config is now instead supposed to be in /var/lib/postgresql/conf/postgresql.conf — in the container, ...

    ... On the host, the Postgresql config is supposed to be in: /opt/talkyard/conf/rdb/ which then gets mounted in /var/lib/postgresql/conf/ in the container. And this is the change I forgot to push to master.

    (Sorry for the troubles; thanks for posting about this.)

    1. ZZoubin Irani @zoubinirani2021-03-15 17:53:11.245Z

      FYI: I tried these steps and they worked except I believe there is an error in the upgrade-if-needed.sh script.

      As a result, I had to comment out set -e to get it to run.

      https://github.com/debiki/talkyard-prod-one/blob/w-km2/scripts/upgrade-if-needed.sh

      1. KajMagnus @KajMagnus2021-03-17 05:43:11.056Z

        What's the error? Thanks for mentioning

    2. In reply tomzafkismugi:
      KajMagnus @KajMagnus2021-04-10 05:20:08.594Z

      Status update: I've merged the w-km2 changes into in the main branch in talkyard-prod-one (two? weeks ago actually, I forgot to mention here, sorry).

      And updated the instructions so one installs Ubuntu 20.04 (instead of 18.04), and Docker 20.x instead of 19.x.

      So this should have been solved now.

      ReplySolution