|
|
@ -15,18 +15,20 @@ if [[ $distro == "Debian" ]]; then |
|
|
|
release=Testing |
|
|
|
else |
|
|
|
echo "Error: failed to detect release" |
|
|
|
exit 1 |
|
|
|
exit 2 |
|
|
|
fi |
|
|
|
echo "Installing podman ..." |
|
|
|
sudo apt install -y gnupg curl |
|
|
|
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_${release:?}/ /" | sudo tee /etc/apt/sources.list.d/podman.list |
|
|
|
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_${release:?}/Release.key | sudo apt-key add - |
|
|
|
|
|
|
|
echo "Installing podman ..." |
|
|
|
if [[ $release != "testing" && $release -lt 11 ]]; then |
|
|
|
sudo apt install -y gnupg curl |
|
|
|
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_${release:?}/ /" | sudo tee /etc/apt/sources.list.d/podman.list |
|
|
|
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/Debian_${release:?}/Release.key | sudo apt-key add - |
|
|
|
fi |
|
|
|
sudo apt update -y |
|
|
|
sudo apt install -y fuse-overlayfs slirp4netns podman |
|
|
|
else |
|
|
|
echo "Error: failed to detect distro." |
|
|
|
exit 1 |
|
|
|
exit 2 |
|
|
|
fi |
|
|
|
|
|
|
|
echo "Copying scripts to /usr/local/bin ..." |
|
|
@ -40,8 +42,14 @@ sudo systemctl enable containers-startup.service |
|
|
|
# create startup.d if it doesn't exist |
|
|
|
sudo mkdir -p /etc/containers/startup.d |
|
|
|
|
|
|
|
echo "Configuring volumes directory ..." |
|
|
|
sudo mkdir -p /srv/vol |
|
|
|
sudo chown containers:containers /srv/vol |
|
|
|
sudo chmod 700 /srv/vol |
|
|
|
|
|
|
|
# configure containers user |
|
|
|
name=containers |
|
|
|
homedir=/usr/lib/containers |
|
|
|
uid=5000 |
|
|
|
subrange="1000000-1000000000" |
|
|
|
if [[ ! $(getent group $name) ]]; then |
|
|
@ -50,10 +58,14 @@ if [[ ! $(getent group $name) ]]; then |
|
|
|
fi |
|
|
|
if [[ ! $(getent passwd $name) ]]; then |
|
|
|
echo "Creating user '$name' ..." |
|
|
|
sudo useradd -r -u $uid -p '*'-s /sbin/nologin -d /srv/vol -g $name $name |
|
|
|
sudo useradd -r -u $uid -p '*' -s /sbin/nologin -d $homedir -g $name $name |
|
|
|
fi |
|
|
|
echo "Configuring user '$name' ..." |
|
|
|
sudo groupmod -g $uid $name |
|
|
|
sudo usermod -u $uid -p '*' -s /sbin/nologin -d /srv/vol/ -G '' -v $subrange -w $subrange -g $name $name |
|
|
|
sudo usermod -u $uid -p '*' -s /sbin/nologin -d $homedir -G '' -v $subrange -w $subrange -g $name $name |
|
|
|
sudo loginctl enable-linger containers |
|
|
|
echo "Creating home directory $homedir ..." |
|
|
|
sudo mkdir -p $homedir |
|
|
|
sudo chown $name:$name $homedir |
|
|
|
|
|
|
|
echo "Install finished successfully." |
|
|
|