====== RADIUSdesk Docker Image ======
===== Introduction =====
* You need to know the basics of Docker in order to complete these instructions.
* The Docker image will produce a split image (two containers)
* One container will be the database using MariaDB
* The other container will be the web server with Nginx, PHP and FreeRADIUS.
===== Install Docker =====
* We assume you are a user called **system** on a standard Ubuntu install.
* Issue the following commands to install the Docker system on your machine.
USER="system"
sudo apt-get update
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo apt-get -y install docker-compose
# Make docker run as non root
sudo usermod -aG docker $USER
sudo chmod 666 /var/run/docker.sock
# customize with your own.
sudo mkdir -p /mnt/data
# make sure all future data in this folder can be created as non root
sudo chown $USER:$USER /mnt/data
===== Create the Docker containers =====
* We include everything to create the RADIUSdesk docker containers with the RADIUSdesk (rdcore) repository.
* Check out the **rdcore** git repository.
cd ~
sudo git clone https://github.com/RADIUSdesk/rdcore.git
* Mount the rdcore top directory to the **rdcore/docker/rdcore** directory
cd rdcore/docker
sudo mkdir rdcore
sudo mount --bind ../../rdcore ./rdcore
* Run the **local_build.sh** script.
./local_build.sh
* There will be feedback on the screen as the two docker containers getting built.
* On my one Ubuntu machine I got an error message about
//docker-credential-desktop not installed or not available in PATH//
* The cure was to edit **~/.docker/config.json** and replace **"credsStore"** by **"credStore"**.
{
"auths": {},
"credStore": "desktop",
"currentContext": "default"
}
* After it completed you can confirm it is running
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
98339a6a1b57 docker_radiusdesk "/bin/sh -c '/usr/bi…" About an hour ago Up About an hour 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:1812-1813->1812-1813/udp, :::1812-1813->1812-1813/udp, 9000/tcp radiusdesk
db3c6fa81d8b bitnami/mariadb:10.5 "/opt/bitnami/script…" 2 hours ago Up 2 hours 3306/t
* Open a browser and go to the IP Address of the host running the docker containers.