OpenSource, OpenData-Datenbank für gestohlene Fahrräder, Suchmaschine und Meldetool.
Die Daten sind unter won.bike/exports/ öffentlich zugänglich.
Erstellen Sie eine globale Datenbank gestohlener Fahrräder, die leicht zugänglich und durchsuchbar ist, um eine schnelle, effiziente und effektive Möglichkeit zur Identifizierung verdächtiger Fahrräder (aus Gebrauchtmärkten, Online-Anzeigen usw.) mithilfe von Bildsuchfunktionen und dynamischen Filtern zu bieten ein schnelles Spiel.
Egal, ob Sie ein erfahrener Radfahrer, ein täglicher Reisender oder ein ambitionierter Fahrer sind, Sie sollten dieses Gefühl bei Fahrrädern kennen: Sie sind nicht nur Dinge, sie sind Objekte, ja, aber wir stellen eine Beziehung zu ihnen her. Sie tragen uns, sie teilen Schweiß und Tränen mit uns und sie sind treue Begleiter, die dazu beitragen, die Welt zu einem besseren Ort zu machen, indem sie Lärm und Umweltverschmutzung reduzieren und unsere Gesundheit und Stimmung verbessern.
Der Diebstahl Ihres Fahrrads ist nicht nur ein finanzieller Schlag, sondern ein persönlicher Schlag für ein „Mitglied“ Ihres Lebens, fast für einen Freund. Das Gefühl der Ohnmacht danach, wenn man weiß, wie wenig man tun kann, um es wieder gutzumachen, und der Gedanke, dass der Kumpel auf Rädern irgendwo da draußen ist, ist frustrierend.
Mithilfe der Technologie kann die Frustration in eine gute Aktivität umgewandelt werden, indem ein wachsamer Beobachter auf der Hut ist, um Diebe zurückzuschlagen.
Sie müssen über die Befehle npm
und docker-compose
verfügen.
Diese Anleitung enthält alle notwendigen Schritte für eine voll funktionsfähige lokale Einrichtung.
Klonen Sie dieses Repository und greifen Sie auf das Repository-Stammverzeichnis zu:
git clone [email protected]:gone-bike/gone.bike.git &&
cd gone.bike
Erstellen Sie eine Entwicklungsumgebungsdatei im Verzeichnis astro/
und installieren Sie Abhängigkeiten:
cd astro &&
cp .env.example .env &&
npm i
Für Seiten, die keine Datenbankverbindung erfordern, reicht dies aus, um die Entwicklungsumgebung betriebsbereit zu haben, andernfalls müssen Sie das Backend einrichten.
Mehrsprachige Seiten generieren: npx astro-i18next generate
Starten Sie den lokalen Server mit: npm run dev
Verwenden Sie im Repository-Stammverzeichnis Vorlagen-Env-Dateien:
touch .env &&
cp .worker.env.example .worker.env &&
cp .directus.env.example .directus.env &&
cp .astro.env.example .astro.env
Erstellen Sie lokale Daten- und Konfigurationsordner:
mkdir -p .config .data/{directus,postgresql} &&
chmod 0777 .data/directus
Erstellen Sie einen lokalen Konfigurationsordner und Dateien:
touch .config/redis.conf
Start postgresql
, redis
und directus
Diensten:
docker-compose up -d postgresql redis directus
Stellen Sie sicher, dass der Server läuft mit:
docker-compose logs --tail 10 directus
Das sollte etwas Ähnliches zeigen:
gone.bike.directus | [12:35:20.420] INFO: Adding first admin user...
gone.bike.directus | [12:35:20.483] INFO: Done
gone.bike.directus | [12:35:23.050] INFO: Server started at http://0.0.0.0:8055
Reflektieren Sie DIRECTUS_TOKEN
in der Datenbank (damit die Website darauf zugreifen kann):
export $(cat astro/.env | grep DIRECTUS_TOKEN | tr -d '"') &&
docker-compose exec postgresql psql -U postgres -c "UPDATE directus_users SET token = '$DIRECTUS_TOKEN'"
Kopieren Sie das Datenbankschema in den Directus-Container und wenden Sie es an:
docker-compose cp database/directus-schema.yml directus:/directus/ &&
docker-compose exec directus npx directus schema apply -y directus-schema.yml
Überprüfen Sie die erfolgreiche Schemainstallation, indem Sie auf Directus unter http://localhost:8055 mit dem Standardbenutzer und -kennwort zugreifen (konfigurierbar in der Datei .directus.env
vor dem ersten Start):
username: [email protected]
password: dev
HINWEIS : Möglicherweise handelt es sich um einen Directus-Fehler. Um das Schema jedoch vollständig anzuwenden und im CMS anzuzeigen, müssen Sie den Vorgang „Sammlung unsichtbar machen/Sammlung sichtbar machen“ für eine der verfügbaren Sammlungen ausführen. Um den Zustand beizubehalten, kann die Operation zweimal angewendet werden. Greifen Sie anschließend auf die Adresse /admin/settings/data-model/bike_brand zu, um das Neuladen der Directus-Metadaten zu erzwingen.
Sie sollten nun eine leere, aber geplante Datenbank sehen können.
SQL-Datenbank
wget https://gone.bike/exports/gone.bike.db-dump.latest.sql.gz &&
gunzip -c gone.bike.db-dump.latest.sql.gz | docker-compose exec -T postgresql psql -U postgres
Bilder
wget https://gone.bike/exports/gone.bike.images.latest.tgz &&
tar zxvf gone.bike.images.latest.tgz --directory .data/directus/
@TODO