[Support] FoxxMD - whoogle-search


15 posts in this topic Last Reply

Recommended Posts

Application Name: whoogle-search

Application Site: https://github.com/benbusby/whoogle-search

Github Repo: https://github.com/benbusby/whoogle-search

Docker Hub: https://hub.docker.com/r/benbusby/whoogle-search

Template Repo: https://github.com/FoxxMD/unraid-docker-templates

 

Overview

 

whoogle-search is a self-hosted Google search proxy with built in privacy enhancements and protections against tracking and data collection, intended as a replacement for both desktop and mobile. 

 

whoogle-search is in active development! Please check the project page (github) if you have non-docker/unraid related questions

 

Some features:

  • No ads or sponsored content
  • No javascript
  • No cookies
  • No tracking/linking of your personal IP address
  • No AMP links
  • No URL tracking tags (i.e. utm=%s)
  • No referrer header
  • POST request search queries (when possible)
  • View images at full res without site redirect (currently mobile only)
  • Dark mode
  • Randomly generated User Agent
  • Optional location-based searching (i.e. results near <city>)
  • Optional NoJS mode to disable all Javascript in results
  • Configurable "always open links in new tabs"

 

Some screenshots:

 

image.png.a87f752b778f34128eb508143a8c9fd7.png

 

image.thumb.png.57639cafcdf844d4e94781441206fee5.png

 

Usage

 

Minimal setup requires only adding the app through CA

 

Template variables/config in unraid

  • Config - mapping to a folder where user settings, in app, will be persisted
  • Application HTTPS Only - setting to true will make the whoogle-search application enforce https (redirect http to https), inside the container
  • Container Port - the port whoogle-search will start on, inside the container

 

In App

  • Root Url in the web configuration can be set to the same as the url:port as you use to access the UI if you want post-configuration actions to redirect to the same page. Or configure with your external URL if using whoogle-search behind a reverse proxy.

 

 

Edited by FoxxMD
adding additional parameters info
Link to post
1 hour ago, milfer322 said:

Yes, how i can change the web UI to 443? 

Thanks!

There should be a Web UI entry in your container settings. Click Show More Settings (but it shouldn't be hidden). If you don't have it for some reason use Add Path, Port, variable, etc. action at the bottom to add it with Container Port 5000 Host Port 443

 

image.thumb.png.76dc57c26aaffb3869229b70b357c618.png

Link to post

My apologies I am not too familiar with unraid using a custom network. unraid cannot use port mappings when the network type is not bridge because you have manually setup a different network to attach the container to.

 

You can either use the bridge network and let unraid map the internal port (5000) to the host port (443) on your IP, do your own mapping (externally) somehow, or you can take some step to modify the port whoogle starts on such as:

  • Fork the project and modify Dockerfile to hardcode a specified port in the entrypoint command, then use your own build as the repo
  • Open an issue to request specifying port using an environmental variable in the Dockerfile
Edited by FoxxMD
Link to post
  • 2 weeks later...
  • 2 weeks later...
  • 1 month later...
4 hours ago, BadCo. said:

I'm having trouble getting this to work through LS.io letsencrypt reverse proxy, anyone got any tips? What proxy configs are people using?

I'm using this config with a subdomain: 

 

# make sure that your dns has a cname set for whoogle and that your whoogle container is not using a base url
# if whoogle is running in bridge mode and the container is named "whoogle", the below config should work as is
# if not, replace the line "set $upstream_app whoogle;" with "set $upstream_app <containername>;"
# or "set $upstream_app <HOSTIP>;" for host mode, HOSTIP being the IP address of whoogle


server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name whoogle.*;

    include /config/nginx/strong-ssl.conf;

    client_max_body_size 0;

    location / {
        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_app whoogle-search;
        set $upstream_port 5000;
        set $upstream_proto http;
        proxy_pass $upstream_proto://$upstream_app:$upstream_port;

        proxy_set_header Range $http_range;
        proxy_set_header If-Range $http_if_range;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;

Note that "strong-ssl.conf;" is specific to my setup. Yours should be just 

include /config/nginx/ssl.conf;

Just paste the above in a file and call it whoogle.subdomain.conf and place it in /letsencrypt/nginx/proxy-confs (assuming you're using LSIO's letsencrypt container)

 

Still having some issues in chrome, gets a 522. Works fine in firefox tho, will have to look into that.

Link to post

Mine is similar to strike but it works with less configuration:

 

server {
	listen 443 ssl http2;
	server_name search.yourDomain.me;
	
	# ssl specific to my machine
	# nothing whoogle specific in here though, same for all subdomain ssl
    include /config/nginx/sub-strong-ssl.conf; 
	
	location / {
        include /config/nginx/proxy.conf; # default proxy conf included in docker-letsencrypt container
        proxy_pass         http://yourHostIp:whooglePort/;
  }
}

 

Link to post

Thanks for the examples, I'll give them a try.

 

This is what I a, currently using. I have had to change the container port due to a conflict with DashMachine.

 

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name search.mydomain.net;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    location / {
        #enable the next two lines for http auth
        #auth_basic "Restricted";
        #auth_basic_user_file /config/nginx/.htpasswd;

        # enable the next two lines for ldap auth
        #auth_request /auth;
        #error_page 401 =200 /login;

        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_app whoogle;
        set $upstream_port 8798;
        set $upstream_proto https;
        proxy_pass $upstream_proto://$upstream_app:$upstream_port;

    }   
}

 

EDIT: Just seen my mistake, $uppstream_app name is wrong. Hopefully that's the only one.

 

EDIT2: Still doesn't seem to work :(

 

EDIT3: Ok it works, yaaay. See below for final config

 

# make sure that your dns has a cname set for whoogle and that your whoogle container is not using a base url
# if whoogle is running in bridge mode and the container is named "whoogle", the below config should work as is
# if not, replace the line "set $upstream_app whoogle;" with "set $upstream_app <containername>;"
# or "set $upstream_app <HOSTIP>;" for host mode, HOSTIP being the IP address of whoogle


server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name search.hardnet.nz;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    location / {
        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_app whoogle-search;
        set $upstream_port 8798;
        set $upstream_proto http;
        proxy_pass $upstream_proto://$upstream_app:$upstream_port;

        proxy_set_header Range $http_range;
        proxy_set_header If-Range $http_if_range;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
        }
    }

 

Edited by BadCo.
Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.