El día viernes, febrero 23, 2024 a las 06:06:18 -0500, Daniel Walsh escribió:
On 2/23/24 5:20 AM, Matthias Apitz wrote:
Hello,
I'm facing the following small issue while stopping a podman container on RedHat 8.9 and SuSE SLES 15SP4. Inside the container runs also a SuSE SLES 15SP4:
$ podman run -d -p 2022:22 -p 28076:8076 -p 23045:3045 7c180cc3c676 c408e9d468cdebbc11a2d974ccf40e315fa724ada702e713359019a25b2b6882
...
$ podman stop c408e9d468cdebbc11a2d974ccf40e315fa724ada702e713359019a25b2b6882 WARN[0010] StopSignal SIGQUIT failed to stop container vibrant_bartik in 10 seconds, resorting to SIGKILL c408e9d468cdebbc11a2d974ccf40e315fa724ada702e713359019a25b2b6882
The Dockerfile which is used to build the container end with:
$ tail -5 suse/Dockerfile EXPOSE 22 8076 3045
ENTRYPOINT /usr/local/bin/start.sh
STOPSIGNAL SIGQUIT
Any ideas what I do wrong?
matthias
Most likely the program running in start.sh is ignoreing the SIGSTOP signal.
The start.sh gets build from Dockerfile in the image: ... RUN echo "/etc/init.d/postgres start" >> /usr/local/bin/start.sh RUN echo "/usr/local/bin/initSunRise.sh" >> /usr/local/bin/start.sh RUN echo "/usr/sbin/sshd -D" >> /usr/local/bin/start.sh RUN chmod 0755 /usr/local/bin/start.sh EXPOSE 22 8076 3045 ENTRYPOINT /usr/local/bin/start.sh STOPSIGNAL SIGQUIT The script /etc/init.d/postgres starts the PostgreSQL server. The script /usr/local/bin/initSunRise.sh loads a database dump into the server with: export LD_LIBRARY_PATH=/usr/local/sisis-pap/lib printf "CREATE ROLE sisis WITH SUPERUSER CREATEDB LOGIN PASSWORD 'sisis123' ;\n" | /usr/local/sisis-pap/pgsql/bin/psql -U postgres >> /home/sisis/err 2>&1 /usr/local/sisis-pap/pgsql/bin/createdb -U sisis -T template0 sisis >> /home/sisis/err 2>&1 cd /home/sisis nohup sh -c 'gzip -dc /home/sisis/dump/testdb.dmp.gz | /usr/local/sisis-pap/pgsql/bin/psql -Usisis sisis >> /home/sisis/err 2>&1 ; /usr/local/sisis-pap/pgsql/bin/psql -Usisis sisis < ~sisis/sc/PosUpdSeq.sql >> /home/sisis/err 2>&1' & and the processes will end, when the dump is loaded; at the moment I started the container again and I see it run fine: $ podman run -d -p 2022:22 -p 8076:8076 -p 3045:3045 suse 3459e118898dc575c9d07bc7dcfdb13fe2f7d3f9e9868b151271b55fb3241617 $ ssh -p 2022 root@localhost root@localhost's password: 459e118898d:~ # ps ax PID TTY STAT TIME COMMAND 1 ? Ss 0:00 /bin/sh -c /usr/local/bin/start.sh 30 ? S 0:00 /usr/local/sisis-pap/pgsql-15.1/bin/postmaster -D / 33 ? Ss 0:00 postgres: logger 34 ? Ss 0:00 postgres: checkpointer 35 ? Ss 0:00 postgres: background writer 37 ? Ss 0:00 postgres: walwriter 38 ? Ss 0:00 postgres: autovacuum launcher 39 ? Ss 0:00 postgres: logical replication launcher 45 ? S 0:00 sh -c gzip -dc /home/sisis/dump/testdb.dmp.gz | /us 46 ? S 0:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 star 47 ? R 0:02 gzip -dc /home/sisis/dump/testdb.dmp.gz 48 ? S 0:00 /usr/local/sisis-pap/pgsql/bin/psql -Usisis sisis 49 ? Rs 0:16 postgres: sisis sisis [local] COPY 50 ? Rs 0:00 sshd: root@pts/0 52 pts/0 Ss 0:00 -bash 85 pts/0 R+ 0:00 ps ax When the load is finished after ~3 minutes it looks like this: 3459e118898d:~ # ps ax PID TTY STAT TIME COMMAND 1 ? Ss 0:00 /bin/sh -c /usr/local/bin/start.sh 30 ? S 0:00 /usr/local/sisis-pap/pgsql-15.1/bin/postmaster -D / 33 ? Ss 0:00 postgres: logger 34 ? Ss 0:00 postgres: checkpointer 35 ? Ss 0:00 postgres: background writer 37 ? Ss 0:01 postgres: walwriter 38 ? Ss 0:00 postgres: autovacuum launcher 39 ? Ss 0:00 postgres: logical replication launcher 46 ? S 0:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 star 50 ? Ds 0:00 sshd: root@pts/0 52 pts/0 Ss 0:00 -bash 290 pts/0 R+ 0:00 ps ax i.e. only the PostgreSQL server is running (postmaster and its children postgres) and the sshd and my ssh session. Thanks matthias -- Matthias Apitz, ✉ guru@unixarea.de, http://www.unixarea.de/ +49-176-38902045 Public GnuPG key: http://www.unixarea.de/key.pub I am not at war with Russia. Я не воюю с Россией. Ich bin nicht im Krieg mit Russland.