Beehaw
  • Communities
  • Create Post
  • search
    Search
  • Login
  • Sign Up
cm0002 ( cm0002@programming.dev )  to Linux@programming.dev · 1 year ago

systemd has been a complete, utter, unmitigated success

blog.tjll.net

external-link
message-square
34
link
fedilink
  • cross-posted to:
  • linux@programming.dev
111
external-link

systemd has been a complete, utter, unmitigated success

blog.tjll.net

cm0002 ( cm0002@programming.dev )  to Linux@programming.dev · 1 year ago
message-square
34
link
fedilink
  • cross-posted to:
  • linux@programming.dev
Eleven init systems enter, one init system leaves.
  • Quik ( Quik@infosec.pub ) 
    link
    fedilink
    English
    arrow-up
    57
    ·
    edit-2
    1 year ago

    One thing the author probably hasn’t done yet or just doesn’t mention is that you can configure .container services with systemd-podman units (often called quadlets), e.g. a simple MariaDB container would look like this:

    [Unit]
    Description=MariaDB container
    
    [Container]
    Image=docker.io/mariadb:latest
    Environment=MYSQL_ROOT_PASSWORD=rootpassword
    Environment=MYSQL_USER=testuser
    Environment=MYSQL_PASSWORD=testpassword
    Environment=MYSQL_DATABASE=testdb
    
    [Install]
    WantedBy=multi-user.target
    

    Short intro Full reference

    This is superb, because it means your containers finally feel well-integrated with the rest of the OS and you can use systemctl, journalctl, etc. just like you would with other services.

    Personally, I use this as an alternative to Podman/Docker compose and have been very happy with it running rootless containers from Nextcloud, Pufferpanel, Forgejo, Authentik, etc. (ask me for .container files if you need any help, I’m currently working on a small repo with a collection)

    • sip ( sip@programming.dev ) 
      link
      fedilink
      arrow-up
      9
      ·
      1 year ago

      awesome!

    • monomon ( monomon@programming.dev ) 
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      It’s amazing, the gitea container supports this. Autostarts on machine restart, etc.

      • Quik ( Quik@infosec.pub ) 
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Yeah, it’s great that Gitea/Forgejo has a copy-paste snippet in the docs, but you can actually use that with pretty much every container.

        There is this useful tool to convert containers, podman commands or even compose files to podman-systemd units: https://github.com/containers/podlet

    • Feyd ( Feyd@programming.dev ) 
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      TIL. That’s pretty useful!

    • Barbecue Cowboy ( BarbecueCowboy@lemmy.dbzer0.com ) 
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      That idea feels very useful but I also distrust it and it makes me angry for reasons I can’t articulate.

      • Quik ( Quik@infosec.pub ) 
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Your distrust is kind of reasonable: I’ve been using this a lot for the past year and there definitely were two or three moments where it was a bit annoying, too little transparent on what commands will be run, etc.

      • Possibly linux ( possiblylinux127@lemmy.zip ) 
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Do the reasons include gate keeping?

    • dwt ( dwt@feddit.org ) 
      link
      fedilink
      Deutsch
      arrow-up
      1
      ·
      1 year ago

      I like this, but even though pod man runs perfect rootless, quadlets can only run as root for now :-(

      • Quik ( Quik@infosec.pub ) 
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Just place your Quadlets in the $HOME/.config/containers/systemd/ directory for this ;)

        The reference I linked to earlier also contains more information on rootless.

        • dwt ( dwt@feddit.org ) 
          link
          fedilink
          Deutsch
          arrow-up
          1
          ·
          1 year ago

          While that is true, that is not how I would run services normally with SystemD. Those would be defined globally, but run as a user.

          Definitiv then in the user home, means that I dint see them with systemctl which is very annoying.

          • Quik ( Quik@infosec.pub ) 
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            Yes, you’d have to do systemctl --user

    • renegadespork ( renegadespork@lemmy.jelliefrontier.net ) 
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      That’s neat! There’s so many advanced features of systemd I swear I learn something new every time it comes up.

      • Jade ( JadedBlueEyes@programming.dev ) 
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        This is due to systems generators allowing Podman to plug in to that system

Linux@programming.dev

linux@programming.dev

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: !linux@programming.dev

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

  • !linux_memes@programming.dev
  • !linuxphones@lemmy.ca
  • our Matrix group chat
  • !reactos@programming.dev

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 67 users / day
  • 757 users / week
  • 2.22K users / month
  • 5.52K users / 6 months
  • 125 local subscribers
  • 15.2K subscribers
  • 4.42K Posts
  • 23K Comments
  • Modlog
  • mods:
  • Ategon ( Ategon@programming.dev ) 
  • adr1an ( anzo@programming.dev ) 
  • dwraf_of_ignorance ( dwraf_of_ignorance@programming.dev ) 
  • BE: 0.19.15
  • Modlog
  • Legal
  • Instances
  • Docs
  • Code