Erstellen Sie eine neue private/auth -geschützte searxng -Instanz mit einem VPN, um in fünf Minuten mit Docker eine bessere Privatsphäre zu erhalten
| Name | Beschreibung | Docker -Bild | Dockerfile |
|---|---|---|---|
| Caddie | Reverse Proxy (Erstellen Sie automatisch ein LetSencrypt -Zertifikat) | docker.io/library/caddy:2-alpine | Dockerfile |
| Searxng | Searxng für sich | docker.io/searxng/searxng:latest | Dockerfile |
| Gluetun | VPN -Client | Docker.io/qmcgaw/gluetun:Latest | Dockerfile |
| Authelia | Auth -System zum Schutz Ihrer privaten Instanz | Docker.io/authelia/authelia:Latest | Dockerfile |
cd /usr/local
git clone https://github.com/mrwazaby/searxng-vpn-docker.git
cd searxng-vpn-dockeropenssl rand -hex 32 für JWT_SECRET , ENCRYPTION_KEY und SESSION_SECRET.env -Datei ( cp .env.example .env ) und bearbeiten Sie sie, um die Variablen festzulegendocker run -it authelia/authelia:latest authelia crypto hash generate argon2docker compose updocker compose up -d Warnung
Wenn Sie eine ältere Version von Docker Desktop ( < 3.6.0 ) verwenden, müssen Sie möglicherweise Docker Compose V1 installieren. Dementsprechend sollten Sie die Befehle in dieser Dokumentation für Docker komponieren v1 ändern. Zum Beispiel ändern Sie "Docker komponieren" in "Docker-compose up".
Installieren Sie das Docker-Compose-Plugin (stellen Sie sicher, dass die Docker-Compose-Version mindestens 1.9.0 ist).
Notiz
Windows -Benutzer können das folgende PowerShell -Skript verwenden, um den geheimen Schlüssel zu generieren:
$randomBytes = New-Object byte[] 32
( New-Object Security.Cryptography.RNGCryptoServiceProvider).GetBytes( $randomBytes )
$secretKey = -join ( $randomBytes | ForEach-Object { " {0:x2} " -f $_ })
( Get-Content searxng / settings.yml) -replace ' ultrasecretkey ' , $secretKey | Set-Content searxng / settings.yml So greifen Sie auf die Protokolle von allen Containern zu: docker compose logs -f .
Zugriff auf die Protokolle eines bestimmten Containers:
docker compose logs -f caddydocker compose logs -f searxngdocker compose logs -f gluetundocker compose logs -f autheliaSie können diesen Schritt überspringen, wenn Sie nicht Systemd verwenden.
cp searxng-vpn-docker.service.template searxng-vpn-docker.serviceWorkingDirectory in der Datei searxng-vpn-docker.service (nur wenn sich der Installationspfad von /r/local/searxng-vpn-docker unterscheidet)systemctl enable $( pwd ) /searxng-vpn-docker.service
systemctl start searxng-vpn-docker.serviceDer Searxng Image -Proxy wird standardmäßig aktiviert.
Mit dem Standard-Inhalts-Security-Policy können der Browser auf ${SEARXNG_HOSTNAME} und https://*.tile.openstreetmap.org; .
Wenn einige Benutzer den Image -Proxy deaktivieren möchten, müssen Sie ./Caddyfile ändern. Ersetzen Sie die img-src 'self' data: https://*.tile.openstreetmap.org; von img-src * data:; .
Unterstützte Architektur:
So aktualisieren Sie den Searxng -Stack:
git pull
docker compose pull
docker compose up -dOder die alte Art (mit der alten Docker-Compose-Version):
git pull
docker-compose pull
docker-compose up -dListe der Inspirationen für dieses Projekt: