Greetings,

Ok, I just updated the docker containers that are running my Mailman 3 
installation over the weekend.  mailman-core is now 3.3.10, with mailman-ngnix 
at 1.28.0, mailman-postfix at 3.10.5-r0 and mailman-django-uwsgi at "latest".

I think I have got everything working normally — messages seem to be processed 
correctly, and I can access the web pages on the web interface.  And I have 
updated various scripts to use --run-as-root until I can get around to 
reconfiguring mailman-core to use a non-root user.

Anyway, since that time, the EC2 instance that the containers are running on 
becomes "unreachable", to use AWS's parlance. I can restore functionality by 
rebooting the instance. According to AWS, this is an application or operating 
system issue, not their instance. Which means auto-recovery doesn't get 
activated.

This always happens overnight, usually after midnight, though one time it was 
around 10:40. I don't see any crontab entries that correlate. And the after 
midnight issues don't always happen at the same time, so it seemed unlikely 
that it was a crontab job that was causing it

I finally looked at the host (rather than the logs of each container) and 
realized that the oom-killer was killing django-admin. As a temporary 
workaround, I've limited memory on the mailman-django-uwsgi container to 4 GiB 
(though, since I just did that this morning, I won't know until after midnight 
(presumably) if it worked or not), and set the RestartPolicy to always.

I'm thinking that this points to a memory leak or some kind?

I did have to add a bunch of packages to my Dockerfile when I rebuilt the 
container, since the last build was like 5 years ago, so I suppose it could be 
that django is just using more memory than it used to, though at the moment, I 
see that it is around 1 GiB:

FROM python:3.12-alpine3.22

RUN apk update && apk add --no-cache --virtual build-deps \
                cargo gcc libffi-dev musl-dev && \
                apk add --no-cache gettext postgresql-dev sassc build-base 
pcre-dev python3-dev libc-dev linux-headers && \
                pip install --upgrade pip setuptools wheel && \
                pip --no-cache-dir install django-haystack==3.3.0 
hyperkitty==1.3.12 \
                postorius==1.3.13 psycopg2 uwsgi==2.0.25 whoosh && \
                apk update && apk del --no-cache build-deps

WORKDIR /opt/mailman/mailman-suite/mailman-suite_project
USER mail

EXPOSE 8000

CMD ["uwsgi", "--ini", "uwsgi.ini"]

Any insights, ideas or assistance would be appreciated.

Thanks!


Pat Hirayama
Pronouns: he/him/his
Systems Engineer
IT | Systems Engineering - Infrastructure
Fred Hutch Cancer Center
O 206.667.4856

[email protected]<mailto:[email protected]>


------------------------------------------------------
Mailman-Users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/mailman-users.python.org/
Mailman FAQ: http://wiki.list.org/x/AgA3
Security Policy: http://wiki.list.org/x/QIA9
Searchable Archives: https://www.mail-archive.com/[email protected]/
    https://mail.python.org/archives/list/[email protected]/
Member address: [email protected]

Reply via email to