1.2. FRED demo¶
The demo environment differs from a production deployment in several important ways:
Sample data. The database is already filled in with a sample zone (
.demo), two registrars (an internalREG-SYSTEMand an externalREG-DEMO), a set of test contacts and domains. In regular deployment, you initialize the zone, registrar, and price list by yourself during registry initialization.Relaxed security. TLS certificates, EPP passwords and database credentials are set to well-known test values.
Single-node layout. All FRED services run on one machine. More details about the differences are explained in registry infrastructure basics section.
No mail or DNS integration. The demo does not send emails or publish zone files to a live DNS server. Emails are created and processed by
messenger, so it is possible to find them in messenger db (sudo -u postgres psql messenger) or Ferda.
For testing and demonstration purposes, we provide a virtual image of Debian server with uninitialized instance of FRED. Download the image here. For building the demo we use script in the repository fred/demo-install.
Import the
.qcow2image.After importing, you can launch the server and ssh into the machine with user:
fred, password:password.Note
One of the possible ways to import and run the image is using Virtual Machine Manager on Linux. The steps are as follows:
Install Virtual Machine Manager:
sudo apt-get update sudo apt-get install virt-manager
Import the Image:
sudo virt-install --name fred-demo --import \ --disk=/home/$USER/path-to-image/fred-v2026.1-debian12.qcow2 \ --vcpus=6 \ --memory=8192 \ --os-variant=debian12 \ --noautoconsole
Find the IP Address:
virsh domifaddr fred-demo
Note the
IP addressassigned to the interface.Connect to the Virtual Machine:
ssh -L 8445:localhost:8445 \ -L 8443:localhost:8443 \ -L 8444:localhost:8444 \ -L 8446:localhost:8446 \ fred@<IP_ADDRESS>
(Replace
<IP_ADDRESS>with the address obtained in the previous step.)Tip
The
-Lflags forward the specified local ports to the corresponding ports on the remote VM. Accessing the services vialocalhostonly works after establishing the SSH tunnel shown above or adding an alias in/etc/hosts– otherwise, use the VM’s IP address directly.After successfully logging in, you can see all registry services via command:
sudo systemctl status 'fred-*'and the containers status via:
sudo docker ps
Note
At this point, the registry is running, but the billing is not enabled and the price for domain registration is not set. This is done to allow you to explore the registry without worrying about the billing.
However, to make the registry fully functional, you should follow the next steps described in chapter registry initialization.
- The registry is ready to use. You can find the following services running on these locations:
- Browser:
FERDA – web based administration interface: https://localhost:8445 login
admin/passwordSecretary – django admin app for editing mail templates: https://localhost:8443 login
admin/password- WebWHOIS – simple website for searching domains using whois protocol: https://localhost:8444
block objects: https://localhost:8444/block_objects
unblock objects: https://localhost:8444/unblock_objects
send AuthInfo: https://localhost:8444/send-password
- Protocols:
EPP localhost:700
WHOIS https://localhost:8444
- CLI Tools:
fred-admin– Administrate the registry, registrars and customise pricing (some of these actions are also available in more user-friendly FERDA administration interface) - see repositoryeppic– A Python EPP client for registrars to allow administration of registry objects without having to write their own implementation of EPP - see repository.C++ and python daemons as described here
- Databases: Database cluster is accessible from the VM with
sudo -u postgres psql. Access from external client is also feasible with appropriate modifications. After logging in, you can see the list of all available databases with command:
\l.
- Databases: Database cluster is accessible from the VM with
Note
Please note that for full functionality you should configure periodic tasks, as described in chapter periodic tasks.