Changedetection Print

  • 0

How to Install ChangeDetection.io on Ubuntu 24.04

ChangeDetection is a powerful open-source web page monitoring tool that tracks changes on websites and notifies you when something changes. It’s perfect for monitoring price updates, policy changes, product availability, or any other webpage modification.

 

In this guide, you’ll learn how to install ChangeDetection on Ubuntu 24.04 using Python’s virtual environment for a clean and isolated setup.

 

Step 1 – Update Your System

Before starting, update your package list to ensure all repositories are current:

sudo apt update

 

Step 2 – Install Required Packages

ChangeDetection.io requires Python 3, Git, and several essential tools. Install them using:

sudo apt install -y python3-pip python3-venv python3-dev git ufw

 

Step 3 – Create a Dedicated User and Directories

For better security, run ChangeDetection.io under its own user account and directory.

sudo useradd -r -m -d /opt/changedetection -s /bin/bash changedetection
sudo mkdir -p /opt/changedetection/datastore
sudo chown -R changedetection:changedetection /opt/changedetection

 

Step 4 – Clone the ChangeDetection.io Repository

Switch to the new user and clone the official repository:

sudo -u changedetection bash -c '
cd /opt/changedetection && \
git clone --depth 1 https://github.com/dgtlmoon/changedetection.io.git .
'

This pulls the latest version of the application.

 

Step 5 – Set Up a Python Virtual Environment

Inside the installation directory, create and activate a virtual environment:

sudo -u changedetection bash -c '
cd /opt/changedetection && \
python3 -m venv venv
'

Next, install the project dependencies:

sudo -u changedetection bash -c '
cd /opt/changedetection && \
./venv/bin/pip install -r requirements.txt
'

 

Step 6 – Create a Systemd Service

To ensure ChangeDetection.io runs automatically and reliably, create a systemd service file:

sudo nano /etc/systemd/system/changedetection.service

Paste the following configuration:

[Unit]
Description=ChangeDetection.io web monitor
After=network.target

[Service]
Type=simple
WorkingDirectory=/opt/changedetection
ExecStart=/opt/changedetection/venv/bin/python /opt/changedetection/changedetection.py -d /opt/changedetection/datastore
Restart=always
RestartSec=5
User=changedetection
Group=changedetection
Environment=PORT=5000
Environment=HOST=0.0.0.0

[Install]
WantedBy=multi-user.target

Save and exit (CTRL+O, ENTER, CTRL+X).

 

Step 7 – Enable and Start the Service

Reload systemd to apply changes and start the service:

sudo systemctl daemon-reload
sudo systemctl enable --now changedetection

Check the service status:

systemctl status changedetection

 

Step 8 – Allow the Port in Firewall

 

If the firewall (UFW) is active, allow port 5000 so you can access the web interface:

sudo ufw allow 5000/tcp

 

Step 9 – Access ChangeDetection

 

Open your web browser and go to:

http://<your-server-ip>:5000

 

Conclusion: You're Now a Web Monitoring Pro!

Congratulations! You have successfully deployed a powerful, private, and infinitely customizable web monitoring solution. By following these nine steps, you've moved beyond the limitations of commercial services and taken full control of your data and monitoring capabilities. You can now track prices, monitor stock, get news alerts, and so much more—all from a service that you own and manage. Happy monitoring!

 


هل كانت المقالة مفيدة ؟
Back