PostgresSql terminates with signal 11 when run with docker-compose

Viewed 2257

I'm trying to run a simple postgres with docker-compose, which is more challenging than I thought. I'm running it on a Raspberry Pi 4 Model B Rev 1.1 with docker-compose at 1.27.4. It fails after calling docker-compose up with the following output:

mydb_1  | Success. You can now start the database server using:
mydb_1  |
mydb_1  |     pg_ctl -D /var/lib/postgresql/data -l logfile start
mydb_1  |
mydb_1  | waiting for server to start....[36] LOG:  starting PostgreSQL 13.1 on arm-unknown-linux-musleabihf, compiled by gcc (Alpine 10.2.1_pre1) 10.2.1 20201203, 32-bit
mydb_1  | [36] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
mydb_1  | ......[36] LOG:  startup process (PID 37) was terminated by signal 11: Segmentation fault
mydb_1  | [36] LOG:  aborting startup due to startup process failure
mydb_1  | [36] LOG:  database system is shut down
mydb_1  | pg_ctl: could not start server
mydb_1  | Examine the log output.
mydb_1  |  stopped waiting

docker-compose.yaml

version: '3'
services:
  mydb:
    image: postgres:13.1-alpine
    environment:
      - POSTGRES_USER=synapse
      - POSTGRES_PASSWORD=test
    volumes:
      - synapse-db:/var/lib/postgresql/data
volumes:
 synapse-db:

Any ideas why this might happen?

3 Answers

I had the same issue with the latest images (I tried all from 9 to 13). Looks like the problem is the latest build, so I replaced 9-alpine version which was commited a couple of days ago with 9.4.23-alpine which is 3 months old and the problem disappeared. So try to pick any version older than a week here https://hub.docker.com/r/arm32v7/postgres/tags?page=1&ordering=last_updated

I'm experiencing the same issue here even when removing the old database by removing the volume which contains it. I tried with postgres:12-alpine and postgres:9-alpine and same result:

...
waiting for server to start....LOG:  startup process (PID 30) was terminated by signal 11: Segmentation fault
LOG:  aborting startup due to startup process failure
LOG:  database system is shut down
pg_ctl: could not start server
...

After investigation, this is again the alpine:3.13 hell on raspbian as described here: https://github.com/docker-library/redis/issues/269#issuecomment-778588162 Just install the latest version of libseccomp as described in this comment and restart everything, it should work...:

wget http://ftp.us.debian.org/debian/pool/main/libs/libseccomp/libseccomp2_2.5.2-2_armhf.deb
sudo dpkg -i libseccomp2_2.5.2-2_armhf.deb

The option

    security_opt:
      - seccomp:unconfined

in docker-compose worked for me.

Related