• 22 Posts
  • 972 Comments
Joined 1 year ago
cake
Cake day: July 5th, 2023

help-circle









  • You could use a systemd unit file:

    [Unit]
    Description=docker_compose_systemd-sonarr
    After=docker.service 
    Requires=docker.service
    
    [Service]
    TimeoutStartSec=0
    
    WorkingDirectory=/var/lib/sonarr
    
    ExecStartPre=-/usr/bin/docker compose kill --remove-orphans
    ExecStartPre=-/usr/bin/docker compose down --remove-orphans
    ExecStartPre=-/usr/bin/docker compose rm -f -s -v
    ExecStartPre=-/usr/bin/docker compose pull
    ExecStart=/usr/bin/docker compose up
    
    Restart=always
    RestartSec=30
    
    [Install]
    WantedBy=multi-user.target
    

    You’d place your compose file in the working dir /var/lib/sonarr. Depending on what tag you’ve set for the image in the compose file, it would be autoupdated, or stay fixed. E.g. lscr.io/linuxserver/sonarr:latest would get autoupdated whereas lscr.io/linuxserver/sonarr:4.0.10 would keep the container at version 4.0.10. If you want to update from 4.0.10, you’d have to change it in the compose file.







  • Apps typically don’t interact with the kernel. They interact with a C library like glibc, bionic or musl. So long as the kernel has a POSIX interface you should be able to compile the same app on different kernels. We do this with apps that run on Linux, BSD and QNX for example.

    As for Android apps, you could extend that to running the Android runtime on top of different kernels. We did that with the Android runtime on QNX for BlackBerry 10 and we did it in a way that didn’t even require recompilation. That said Wiki says they don’t support Android apps. So if you meant Android apps they simply don’t.