Deploy Ferdinand
Getting Podman Image
wget https://kugelblitz.openml.io/openml-ferdinand.tar
podman load -i openml-ferdinand.tar
Run Podman Container
Run the container with
podman run -d -p 127.0.0.1:8501:8501 -e FERDINAND_DISABLE_LOGIN=true --name ferdinand ferdinand
Persistent Execution via Systemd
Running the application directly from the terminal will cause it to terminate when SSH session ends. So we created a systemd service to ensure the app runs in the background and restarts automatically if the server reboots.
We created the following service file:
sudo nano /etc/systemd/system/ferdinand.service
and added the following configuration:
[Unit]
Description=Ferdinand Streamlit Application
After=network.target
[Service]
User=ubuntu
WorkingDirectory=/home/ubuntu/Ferdinand
ExecStart=FERDINAND_DISABLE_LOGIN=true uv run streamlit run main.py --server.port 8501
Restart=always
[Install]
WantedBy=multi-user.target
Reload the systemd daemon to recognize the new file, enable the service to start on boot, and start it immediately
sudo systemctl daemon-reload
sudo systemctl enable ferdinand.service
sudo systemctl start ferdinand.service