Almalinux LXC setup
Here is a simple review of what should be done in a newly created LXC using the image from Proxmox VE.
If you're installing a VM using the official .iso image, some packages might already be installed by default (eg. openssh-server and wget).
Step by step procedure
-
Install important packages
-
update and upgrade
sudo dnf update -y && dnf upgrade -y -
install basic packages (
gitandnet-toolsmight not be useful, depending on your usage)sudo dnf install -y vim git tar wget bind-utils net-tools openssh-server -
Optional: Docker installation
- Add Docker repository
sudo dnf install -y dnf-plugins-core sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo - Install Docker
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin - Enable Docker
sudo systemctl enable --now docker - Test Docker installation
docker run hello-world
- Add Docker repository
-
-
Create a user with sudo privileges (replace
thorganby the username of your choice)sudo adduser thorgan sudo usermod -aG wheel thorgan sudo passwd thorganIf you installed Docker in
step 1, you can give permission to your newly created user to use it:sudo usermod -aG docker thorganReplace
thorganby the username you created before. -
Open the port
22in the firewallsudo firewall-cmd --add-service=ssh --permanent sudo firewall-cmd --reload -
Start and enable
sshdto accept SSH connectionssudo service sshd start && systemctl enable sshd
Script procedure
#!/bin/bash
sudo dnf update -y && dnf upgrade -y
sudo dnf install -y vim git tar wget bind-utils net-tools openssh-server
read -p "Enter username: " user
sudo adduser "$user"
sudo usermod -aG wheel "$user"
sudo passwd "$user"
sudo firewall-cmd --add-service=ssh --permanent
sudo firewall-cmd --reload
sudo service sshd start && systemctl enable sshd
Script with docker installation
#!/bin/bash
# Update & Upgrade
sudo dnf update -y && dnf upgrade -y
# Install necessary packages
sudo dnf install -y dnf-plugins-core vim git tar wget bind-utils net-tools openssh-server
# Adding docker repository
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
# Install docker
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Enable docker
sudo systemctl enable --now docker
# Test docker installation
docker run hello-world
# Create sudoer user
read -p "Enter username: " user
sudo adduser "$user"
sudo usermod -aG wheel "$user"
sudo usermod -aG docker "$user"
sudo passwd "$user"
# Open port 22 on the firewall
sudo firewall-cmd --add-service=ssh --permanent
sudo firewall-cmd --reload
# Enable & Start SSH
sudo service sshd start && systemctl enable sshd
No Comments