Select Your Language

Infrastructure and Management

Cloud Computing

Storage

Runtimes

Integration and Automation

  • Comments
  • Podman child processes from apache (attemping to send mail) don't spawn

    Posted on

    Hi all,

    So I'm just trying to get mail working in various containers. One of them is trac 1.0 with heavy internal customization.

    Here's what happens:

    • I use sendmail on CLI like so (as Trac requires these flags):
      • sendmail -i -f trac@domain.com me@domain.com
      • I then hit enter
      • I type in Subject: test
      • I type message
      • I hit Ctrl + D. It works fine
    • I have Trac configured with the proper settings. I copied the trac.ini into this container from an already working instance. So I know it's not an issue with sending mails necessarily.
    • I add a ticket, I click submit. Nothing happens. I don't get an email notification.

    In the code, I found the actual sendmail function (SmtpEmailSend). There's a line where a child process is spawned from trac, and I believe this is where it's failing. I honestly have no idea though b/c I don't have logs or information that it's reporting to me. In the mail logs I see that it's been written/sent as normal when i send on CLI. For Trac the system drops it, and it's not sent.

    So .. What is happening here that's failing ?? The Exact Same thing happens in SVN as well: The post commit hook calls a child process, and it's never sent (in perl this time, not in python). A CLI email sends just fine.

    This is maddening ya'll.

    Environment:

    • RHEL 8 Base OS, in FIPS mode. I've turned off selinux because I hate it. It's evil.
    • Ubuntu 18.04 containers (SVN and Trac are separate)
    • podman 1.6.4-12 (standard system package)
    • supervisord managing rsyslog, a postfix instance, and finally apache2 for the service itself.

    It's not the environment (permissions). It's not SELinux b/c it's off. So how do I get email to send ? I've been fighting with this for weeks. It really shouldn't be this hard.

    Other things tried:
    - Different OS containers (Ubuntu 16.04, and alpine linux)
    - ssmtp/msmtp (ssmtp doesn't support the flags that Trac requires, and it's no longer supported)
    - The gold standard "one container/one process" was tried before (I completely disagree with this concept, as LXC works just fine). It didn't work. so I moved to a multi-process structure to see if it would fix the issue. It doesn't.
    - In trac, you can switch to: SendmailEmailSend instead which is a direct call to the sendmail program. This doesn't work either.

    Obviously the last thing tried here, wouldn't help me with post-commit for SVN. But the point is that seemingly, child processes aren't allowed to be spawned. I don't really know if that's the issue, I'm just speculating because it seems like that's it. If that IS the issue, then how the hell do I fix that ?? Just scrap the whole project and say fuck docker/podman ?? Because that's kinda where I'm at. Mail is not hard. It really shouldn't be this much work to do this.

    by

    points

    Responses

    Red Hat LinkedIn YouTube Facebook X, formerly Twitter

    Quick Links

    Help

    Site Info

    Related Sites

    © 2026 Red Hat