I’ve been messing around with podman in Arch and porting my self-hosted services over to it. However, it’s been finicky and I am wondering if anybody here could help me out with a few things.

  1. Some of my containers aren’t getting properly started up by podman-restart.service on system reboot. I realized they were the ones that depended on my slow external BTRFS drive. Currently its mounted with x-systemd.automount,x-systemd.device-timeout=5 so that it doesn’t hang up the boot if I disconnect it, but it seems like Podman doesn’t like this. If I remove the systemd options the containers properly boot up automatically, but I risk boot hangs if the drive ever gets disconnected from my system. I have already tried x-systemd.before=podman-restart.service and x-systemd.required-by=podman-restart.service, and even tried increasing the device-timeout to no avail.

When it attempts to start the container, I see this in journalctl:

Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Got automount request for /external, triggered by 3130 (3)
Aug 27 21:15:46 arch-nas systemd[1]: external.automount: Automount point already active?
Aug 27 21:15:46 arch-nas systemd[1]: libpod-742b4595dbb1ce604440d8c867e72864d5d4ce1f2517ed111fa849e59a608869.scope: Deactivated successfully.
Aug 27 21:15:46 arch-nas conmon[3124]: conmon 742b4595dbb1ce604440 : runtime stderr: error stat'ing file `/external/share`: Too many levels of symbolic links
Aug 27 21:15:46 arch-nas conmon[3124]: conmon 742b4595dbb1ce604440 : Failed to create container: exit status 1
  1. When I shutdown my system, it has to wait for 90 seconds for libcrun and libpod-conmon-.scope to timeout. Any idea what’s causing this? This delay gets pretty annoying especially on an Arch system since I am constantly restarting due to updates.

All the containers are started using docker-compose with podman-docker if that’s relevant.

Any help appreciated!

EDIT: So it seems like podman really doesn’t like systemd automount. Switching to nofail, x-systemd.before=podman-restart.service seems like a decent workaround if anyone’s interested.

      • Static_Rocket@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        10 months ago

        I just wish podman-compose wasn’t so scuffed. I submitted a PR about some garbage months ago and it just seems dead.

        • Molecular0079@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 months ago

          What happens if you use regular docker-compose but with podman-docker? I’ve gotten better results with that.

          • Static_Rocket@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            10 months ago

            It just bothers me that I have to use a tool outside of the ecosystem for that. Doesn’t it also behave differently though? Like doesn’t it assume everything is root when you use the socket required for docker-compose?

            • Molecular0079@lemmy.worldOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              10 months ago

              Yes, I think it does, but thats how docker-compose works with docker anyways so it’s a closer experience. I think if you’re using docker-compose files you sorta want that docker-like experience no?

              I get where you’re coming from though. It would be nice to run docker-compose files completely rootless with podman-compose.

              • Static_Rocket@lemmy.world
                link
                fedilink
                English
                arrow-up
                1
                ·
                10 months ago

                Eh, I don’t mind learning a new config if the tool requires it. I just want to define run commands in yaml and have it auto generate pods and startup scripts.

        • letbelight@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 months ago

          You need to mention muayyad-alsadi, because the only one who maintain it now seems only him. Just keep mentioning, and he will review the PR.

    • Molecular0079@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      6
      ·
      10 months ago

      Mostly for the better integration with Cockpit, but I do eventually want to play around with some of the rootless container stuff that podman has.

    • BaconIsAVeg@lemmy.ml
      cake
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 months ago

      Mainly I looked at it to see if it would be viable for our non-techie contract developers who are forced to license Docker Desktop because they’re on Windows.

      Yes, $60/year/user isn’t that much, however the procurement process for some of these large contracting firms will make your balls shrivel up and fall off.

      • hottari@lemmy.ml
        link
        fedilink
        arrow-up
        1
        arrow-down
        2
        ·
        10 months ago

        Did you even read OPs post? What about the problem and solution they described is polished?

        • letbelight@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          10 months ago

          I read it. And it’s not podman wrong doing.

          You need to be sure when enabling the auto start using systemd, so it’s not podman fault.

          Period.

          • hottari@lemmy.ml
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            10 months ago

            Am confused.

            So OP is just an idiot who doesn’t know how to use podman correctly?

            Is that what you are saying?