Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install
  1. Cloudron Forum
  2. PocketBase
  3. Email for pocketbase

Email for pocketbase

Scheduled Pinned Locked Moved PocketBase
21 Posts 6 Posters 607 Views 6 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • JesperBllnbmJ Offline
    JesperBllnbmJ Offline
    JesperBllnbm
    wrote on last edited by
    #10

    😍 amazing turn around time

    1 Reply Last reply
    1
    • V Online
      V Online
      Valexico
      wrote last edited by
      #11

      Hi
      I don't succeed to make pocketbase work with cloudron SMTP
      I always end up with timeout errors

      What am I missing

      e2f68925-5623-428b-ae7f-026518a260f9-image.jpeg

      1 Reply Last reply
      0
      • V Online
        V Online
        Valexico
        wrote last edited by Valexico
        #12

        Hmm it appears that when sending test email, pocketbase is showing timeout but after a while I do receive the test email in my inbox.
        This slow response also make login very slow because pocketbase is trying to sen email alerts. I am not sure where can be the problem.

        From pocketbase point of view, the email request gave timeout
        From user point of view the login time is slow (~30 seconds maybe) -> workround : disable login alerts
        But emails do get sent at the end ? At least test emails

        1 Reply Last reply
        2
        • jamesJ Offline
          jamesJ Offline
          james
          Staff
          wrote last edited by
          #13

          Hello @valexico
          Thanks for reporting this.
          I am looking into it.

          1 Reply Last reply
          2
          • jamesJ Offline
            jamesJ Offline
            james
            Staff
            wrote last edited by
            #14

            This behaviour is very odd.
            Sometimes it sends, sometimes it does not, but always the send test email times out.
            As if there is an internal event / cron handler that does not work correctly and only if you hit the perfect time frame to send a test mail it actually sends

            Many times it fails the send test mail only to send the mail after the failed attempt anyway.
            I observed this in the mail service logs and the debug log of pocketbase.

            There must be something going in internally that is creating this issue.

            37698875-3502-4bda-b362-daca9fce651c-image.jpeg

            1 Reply Last reply
            0
            • robiR Offline
              robiR Offline
              robi
              wrote last edited by
              #15

              Could it be hitting throttling limits?

              Conscious tech

              jamesJ 1 Reply Last reply
              0
              • robiR robi

                Could it be hitting throttling limits?

                jamesJ Offline
                jamesJ Offline
                james
                Staff
                wrote last edited by
                #16

                Hello @robi

                The Cloudron mail server was not throttling, I ensured that.

                robiR 1 Reply Last reply
                0
                • jamesJ james

                  Hello @robi

                  The Cloudron mail server was not throttling, I ensured that.

                  robiR Offline
                  robiR Offline
                  robi
                  wrote last edited by
                  #17

                  @james I was thinking fw not mail.

                  Next thing would be to see what the code does

                  Conscious tech

                  1 Reply Last reply
                  0
                  • jamesJ Offline
                    jamesJ Offline
                    james
                    Staff
                    wrote last edited by
                    #18

                    Hello @jesperbllnbm

                    This is/was a very complex issue to figure out.

                    TL;DR - "fix" or workaround

                    Renaming your mail domain from my to e.g.: mail in /#/email-settings will resolve this issue. (be sure to also update your PTR/rDNS record)

                    Changing the port from 2587 to 587 also works when incoming mails for your Cloudron server is enabled.
                    Warning, changing just the port in pocketbase will not be permanent, since every app restart will configure 2587 again.

                    Detailed report

                    Pocketbase is a golang application.
                    If CGO_ENABLED=0 is set for the build it will result in Go uses its own built-in resolver.
                    While designed to mimic the system, it has known edge cases where it might skip /etc/hosts and rely entirely on DNS.

                    Certain hosting providers, like DigitalOcean, will set the name for the server in the /etc/hosts file.
                    So if you name your server my.cloudron.dev DigitalOcean will create a record in the /etc/hosts file with my.cloudron.dev 127.0.0.1, which will result into DNS queries asking for my.cloudron.dev to answer with 127.0.0.1.
                    If this is not handled by Cloudron certain things would not work.
                    For example, if you'd use the N8N Cloudron app to run API calls against your own Cloudron server, it would resolve my.cloudron.dev to 127.0.0.1 and fail.

                    This is why we have a line of code to prevent this issue - https://git.cloudron.io/platform/box/-/blob/v9.1.6/src/docker.js?ref_type=tags#L716

                    if (manifest.id !== 'com.adguard.home.cloudronapp') containerOptions.HostConfig.ExtraHosts.push(`${dashboardFqdn}:172.18.0.1`);
                    

                    to always resolve the dashboard FQND to 172.18.0.1 which is the docker proxy / docker bridge inside the docker containers, except for the AdGuard app.

                    But now, something specific can happen.
                    The golang mail client requires the mail host to match the mail domain for StartTLS validation.
                    That is why we have the requiresValidCertificate flag for the sendmail addon for Cloudron apps to handle apps that need valid certificates for mailing.
                    With requiresValidCertificate set to false (the default), the CLOUDRON_MAIL_SMTP_SERVER variable inside the docker containers will be mail which works for most apps.
                    With CLOUDRON_MAIL_SMTP_SERVER set truethe CLOUDRON_MAIL_SMTP_SERVER will be the mail domain, by default my.DOMAIN.TLD so for me my.cloudron.dev.

                    For pocketbase, Go uses its own built-in resolver, it now resolves my.cloudron.dev not to 172.18.0.1 but to the public IPv4/IPv6 139.162.188.66/2a01:7e01::2000:3cff:fe7c:9d41 and tries to connect with port 2587 which fails, because port 2587 is only open internally.
                    So at some point the failing connection times out and Go's will try to resolve my.cloudron.dev not with its internal resolver but from the system, which then sends the mail.
                    This explains why the test mail is sent after some time, even tho it reports a timeout and fail.

                    We are looking deeper into this to find a solution that covers these edge cases to prevent such issues in the future.
                    The roads of DNS can be a harsh journey to navigate.

                    1 Reply Last reply
                    1
                    • jamesJ Offline
                      jamesJ Offline
                      james
                      Staff
                      wrote last edited by
                      #19

                      We found a solution and this will be part of the next Cloudron release.

                      1 Reply Last reply
                      0
                      • V Online
                        V Online
                        Valexico
                        wrote last edited by
                        #20

                        Thank you for your work on this. It was a hard one...
                        Any idea of the timing of this next release ? Are you speaking of a major release ?

                        jamesJ 1 Reply Last reply
                        0
                        • V Valexico

                          Thank you for your work on this. It was a hard one...
                          Any idea of the timing of this next release ? Are you speaking of a major release ?

                          jamesJ Offline
                          jamesJ Offline
                          james
                          Staff
                          wrote last edited by
                          #21

                          Hello @valexico

                          @Valexico said:

                          Are you speaking of a major release ?

                          No, the next minor release will include this fix.
                          Until then, you can either set the port in pocketbase to 587 if incoming fails is enabled on your Cloudron. (not persistent across restarts)
                          Or you change the mail domain from my to e.g. mail. (persistent across restarts)

                          1 Reply Last reply
                          1

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Bookmarks
                          • Search