Whoogle: A search engine for the family
Whoogle is a privacy-focused, family-friendly search engine powered by Google. It offers ad-free results, Safe Search filtering, and easy setup with Docker. Perfect for families seeking secure, private browsing without tracking or explicit content.

In a world where online privacy and family safety are more important than ever, Whoogle emerges as a powerful solution. Whoogle is an open-source, self-hosted search engine that delivers Google search results without the tracking, ads, or unwanted content. It provides a clean, fast, and privacy-focused search experience suitable for all ages.
Features
Here are some standout features that make Whoogle an excellent choice for families and privacy-conscious users:
- Privacy Protection: Whoogle acts as a proxy between you and Google, ensuring your searches remain anonymous. No tracking cookies or personal data collection.
- Family-Friendly Filters: Built-in Safe Search filters out explicit content, making it safe for users of all ages.
- Ad-Free Experience: Removes all Google ads from search results, providing a cleaner and faster interface.
- Self-Hosted: Host Whoogle on your own server or local machine, giving you complete control over your data.
- Customizable Interface: Supports custom themes, languages, and search parameters to suit your preferences.
- Lightweight and Fast: Minimal resource usage ensures quick search results without the bloat.
- Open Source: Completely free and open-source, with a community of contributors improving it constantly.
- Mobile-Friendly: Responsive design that works seamlessly on smartphones and tablets.
- No JavaScript Required: Functions smoothly without relying on JavaScript, enhancing privacy and performance.
- Easy Deployment: Quick to set up using Docker Compose with minimal commands.
How to Set Up Whoogle with Docker Compose
Setting up Whoogle is straightforward. Below are the step-by-step instructions to get Whoogle up and running using Docker Compose. We'll use one-line CLI commands for efficiency.
Prerequisites
- A machine with Docker and Docker Compose installed (Linux, macOS, or Windows with WSL2).
- Basic command-line knowledge.
Step-by-Step Instructions
1. Install Docker and Docker Compose
Uninstall any existing installation of Docker. Update your system packages and install Docker and Docker Compose:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
Uninstall Docker
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Add Official Docker Repo
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Install Docker & Docker Compose
2. Create a Directory for Whoogle
Create a directory for Whoogle; we'll use /srv/whoogle, and navigate into it:
sudo mkdir /srv/whoogle && cd /srv/whoogle
3. Create the Docker Compose File
Generate the docker-compose.yml
file with the necessary configuration:
sudo nano docker-compose.yml
Launch nano to edit the yml file for docker compose
services:
whoogle-search:
image: ${WHOOGLE_IMAGE:-benbusby/whoogle-search}
container_name: whoogle-search
restart: unless-stopped
pids_limit: 50
mem_limit: 256mb
memswap_limit: 256mb
# user debian-tor from tor package
user: whoogle
security_opt:
- no-new-privileges
cap_drop:
- ALL
tmpfs:
- /config/:size=10M,uid=927,gid=927,mode=1700
- /var/lib/tor/:size=15M,uid=927,gid=927,mode=1700
- /run/tor/:size=1M,uid=927,gid=927,mode=1700
#environment: # Uncomment to configure environment variables
# Basic auth configuration, uncomment to enable
#- WHOOGLE_USER=<auth username>
#- WHOOGLE_PASS=<auth password>
# Proxy configuration, uncomment to enable
#- WHOOGLE_PROXY_USER=<proxy username>
#- WHOOGLE_PROXY_PASS=<proxy password>
#- WHOOGLE_PROXY_TYPE=<proxy type (http|https|socks4|socks5)
#- WHOOGLE_PROXY_LOC=<proxy host/ip>
# Site alternative configurations, uncomment to enable
# Note: If not set, the feature will still be available
# with default values.
#- WHOOGLE_ALT_TW=farside.link/nitter
#- WHOOGLE_ALT_YT=farside.link/invidious
#- WHOOGLE_ALT_IG=farside.link/bibliogram/u
#- WHOOGLE_ALT_RD=farside.link/libreddit
#- WHOOGLE_ALT_MD=farside.link/scribe
#- WHOOGLE_ALT_TL=farside.link/lingva
#- WHOOGLE_ALT_IMG=farside.link/rimgo
#- WHOOGLE_ALT_WIKI=farside.link/wikiless
#- WHOOGLE_ALT_IMDB=farside.link/libremdb
#- WHOOGLE_ALT_QUORA=farside.link/quetre
#env_file: # Alternatively, load variables from whoogle.env
#- whoogle.env
ports:
- 5000:5000
Copy and paste the above into your docker-compose.yml
4. Launch Whoogle
Start the Whoogle service using Docker Compose:
sudo docker-compose up -d
The -d
flag runs the container in detached mode.
5. Access Whoogle
Open your web browser and navigate to:
http://localhost:5000
If you're running Whoogle on a remote server, replace localhost
with your server's IP address.
6. (Optional) Set Up Nginx Reverse Proxy with HTTPS
For secure access over HTTPS and a custom domain, you can set up a reverse proxy using Nginx Proxy Manager.
See the set up instructions for Nginx Proxy Manager here: https://nginxproxymanager.com/setup/
Conclusion
Whoogle provides a seamless, private, and family-friendly search experience by leveraging the power of Google without compromising on privacy or safety. Its ease of setup and robust features make it an ideal choice for families and individuals alike.
Give Whoogle a try today and take control of your search experience!