mirror of
https://code.forgejo.org/actions/setup-forgejo.git
synced 2024-11-23 20:40:59 -05:00
45 lines
1.1 KiB
Bash
Executable file
45 lines
1.1 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
set -x
|
|
|
|
: ${LXC_IP_RANGE:=10.0.8}
|
|
|
|
function install_docker() {
|
|
if ! systemctl is-active --quiet docker; then
|
|
echo deb http://deb.debian.org/debian bullseye-backports main | tee /etc/apt/sources.list.d/backports.list && apt-get update
|
|
DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --quiet -y -t bullseye-backports git docker.io
|
|
fi
|
|
}
|
|
|
|
function install_lxc() {
|
|
if ! systemctl is-active --quiet lxc-net; then
|
|
apt-get update
|
|
DEBIAN_FRONTEND=noninteractive apt-get install -y -qq make git libvirt0 libpam-cgfs bridge-utils uidmap dnsmasq-base dnsmasq dnsmasq-utils qemu-user-static
|
|
systemctl disable --now dnsmasq
|
|
apt-get install -y -qq lxc
|
|
systemctl stop lxc-net
|
|
cat >> /etc/default/lxc-net <<EOF
|
|
LXC_ADDR="$LXC_IP_RANGE.1"
|
|
LXC_NETMASK="255.255.255.0"
|
|
LXC_NETWORK="$LXC_IP_RANGE.0/24"
|
|
LXC_DHCP_RANGE="$LXC_IP_RANGE.2,$LXC_IP_RANGE.254"
|
|
LXC_DHCP_MAX="253"
|
|
EOF
|
|
systemctl start lxc-net
|
|
fi
|
|
}
|
|
|
|
function install_other() {
|
|
local packages="sudo"
|
|
if ! which $packages ; then
|
|
apt-get install -y -qq $packages
|
|
fi
|
|
}
|
|
|
|
function setup() {
|
|
install_other
|
|
install_docker
|
|
install_lxc
|
|
}
|
|
|
|
setup
|