So I will try to get as descriptive as possible. Not so long ago I was really getting into scientific/engineering simulation software. Along with OpenFOAM I got into using Ansys, StarCCM+, Xflow, Converge, Comsol etc. They all have linux versions but only support CentOS7/RHEL 7. I started using CentOS 7 as a daily and it worked well if I was willing to build newer packages from source, but that hit a wall. Fortunately someone on reddit suggested docker and I attempted this using Fedora as host. It worked well but I then realized I needed Systemd to get these software’s license services working in container. And then I officially found a way to get systemd enabled and the rest was history.
I even moved over to Podman and tried the container and it worked. I launch the docker using my own script called centos-systemd (originally it was called Centos7-base2 when i was testing it, but I digress). However openfoam and paraview stopped working in fedora and I had to move to another distro. Here is where it all fell part. My container would not run on anything other then fedora and using cgroup1. I concluded that in order to get a systemd centos container to work, the host needs to be in the same family.
And now to the point, In one my post in r/podman subreddit a user suggested I should use a LXD container as that way I can have a systemd enabled centos container in any host without “docker mounting hackery”. So my question is, is it possible and should I be expecting any issues?
All I am looking for is a container (I don’t want to do a VM because I prefer the bare metal performance and these software are very cpu and memory intensive) that can:
1). Run well on an Ubuntu or PopOS
2). Has no issues with cgroups
3). Can use systemd for my software license services and other systemd services if needed
4). Can mount to host filesystem (like can access host /run directory for sd cards/usb/iso, and can also easily share host /opt and /home directory for easy file I/O)
5). Can use host gpu for acceleration and host display to use applications
If so how do I go about it? Do I need specific settings when I lxd init? I want full read/write access to host home and opt directory too. Also don’t want to limit size of container
Is this possible?