Install Lookyloo
Requires Python 3.9 or higher (3.12 prefered), prefers Ubuntu 24.04 or more recent (can work on 22.04). |
Install Lookyloo Dependencies
Install Poetry
Poetry 2.1 handles dependency installation as well as building and packaging of Python packages.
See the installation guide for more details.
Install Valkey
Lacus supports valkey or redis, but valkey is prefered now due to the change of license. |
Valkey: An open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.
Valkey should be installed from the source, and the repository must be in the same directory as the one you will be cloning Lookyloo in to. |
Since Lookyloo 1.26, valkey 8.0 is required. |
In order to compile and test valkey, you will need a few packages:
sudo apt-get update
sudo apt install build-essential tcl
git clone https://github.com/valkey-io/valkey
cd valkey
git checkout 8.0
make
# Optionally, you can run the tests:
make test
cd ..
[Optional] Install kvrocks (since v1.24)
Kvrocks: A distributed key-value database built on top of RocksDB. It has the same API as Valkey, but is stored on disk.
It is only useful if you have a lot of captures you want to index for a long time, and run a public instance of Lookyloo where some captures are not public, but you still want to search for them as platform admin.
The indexing is enabled by index_everything
in the config/generic.json
configuration file.
git clone https://github.com/apache/kvrocks.git
cd kvrocks
./x.py build
Install Lookyloo
Prerequisites
-
Poetry 2.1+ is installed.
-
Valkey is installed from the source. The repository must be in the same directory as the one you will be cloning Lookyloo in to.
-
Python3 development package
sudo apt install python3-dev
Procedure
-
Clone the Lookyloo repository.
git clone https://github.com/Lookyloo/lookyloo.git
The directory tree must look like that:
.
├── valkey => cloned valkey
├── kvrocks => cloned kvrocks (optional)
└── lookyloo => cloned lookyloo
-
Change directory
cd lookyloo
-
Run the commands:
poetry install echo LOOKYLOO_HOME="'`pwd`'" > .env
-
Install the dependencies for playwright (requires sudo), and the browsers:
poetry run playwright install-deps
poetry run playwright install
Configuration
-
Initialize the user configuration
cp config/generic.json.sample config/generic.json cp config/modules.json.sample config/modules.json
-
Edit the config files accordingly to your needs: see the
_notes
key in the JSON file. You can also look at the integration page for more information regarding the modules, and the configuration page for the generic configuration options. -
Make sure the configuration files are valid, and pull the 3rd party dependencies for the website
poetry run update --yes
Open the website
Unless you changed the default in config/generic.json
, the web interface will be reachable at http://0.0.0.0:5100/
Install uwhoisd (Optional)
In order to use the Universal Whois you have to install uwhoisd from Lookyloo repository and the whois package:
sudo apt-get update
sudo apt-get install whois
git clone https://github.com/Lookyloo/uwhoisd
cd uwhoisd
poetry install
echo UWHOISD_HOME="'`pwd`'" > .env
poetry run start
Configure services (Optional)
Then configure the service file
```bash
nano etc/systemd/system/uwhoisd.service.sample
sudo cp etc/systemd/system/uwhoisd.service.sample /etc/systemd/system/uwhoisd.service
cd ..
sudo systemctl daemon-reload
sudo systemctl start uwhoisd
sudo systemctl status uwhoisd
If everything is ok, activate the service for reboot
sudo systemctl enable uwhoisd