- Einleitung
- Technologien
- Systemaktualisierung und Softwareinstallation
- Systemeinstellungen
- Architektur
PDF-procesor ist eine Webanwendung, die es Benutzern ermöglicht, druckbare PDF-Dokumente aus ihrer DMS (Dokumentenmanagementsystem) zu erstellen. Dieser Service ist Teil des 17025starter-Programms, das von Konsek Engineering & Consulting GmbH angeboten wird.
- Next.js: React-Framework für serverseitiges Rendering und Routing
- TypeScript: Typisierter Übersatz von JavaScript
- Tailwind CSS: Utility-First CSS-Framework
- NextAuth.js: Authentifizierungslösung für Next.js
- Drizzle ORM: TypeScript ORM für SQL-Datenbanken
- Docker: Containerverwaltung für PostgresSQL Datenbank
Führen Sie die folgenden Befehle aus, um das System zu aktualisieren und die benötigte Software zu installieren:
sudo apt update -y && sudo apt upgrade -y
sudo apt install -y nano git python3-pip docker.io eza
curl https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh --output anaconda.sh
bash anaconda.sh
sudo systemctl stop apache2
sudo apt purge apache2 -y
sudo apt autoremove -y
sudo apt install -y nginx
curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz
tar -xf vscode_cli.tar.gz
Folgen Sie der Anleitung zur Einrichtung der Firewall: Firewall einrichten
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
source ~/.bashrc
nvm install --lts
nvm use --lts
npm install pm2 -g
Github Action benötigt ein Standarduser Folgen Sie der Anleitung zur Installation des GitHub Actions Runners:
Folgen Sie der Anleitung zur Einrichtung von Let's Encrypt: Let's Encrypt
DATABASE_URL
= URL Ihrer DatenbankNEXTAUTH_URL
= URL Ihrer Anwendung für NextAuthNEXT_PUBLIC_API_URL
= URL Ihrer Anwendung für NextAuthNEXTAUTH_SECRET
= Geheimer Schlüssel für NextAuthGOOGLE_CLIENT_ID
= Für das Login mit Google.GOOGLE_CLIENT_SECRET
= Für das Login mit Google.
ENCRYPTION_KEY
= Schlüssel für das Verschlüsseln.ENCRYPTION_IV
= Schlüssel für das Verschlüsseln.DB_HOST
= Datenbank HostDB_NAME
= Datenbank NameDB_USER
= Datenbank UsernameDB_PASSWORD
= Datenbank Passwort.
/src
: Enthält den Quellcode der Anwendung/app
: Next.js App Router und Seitenkomponenten/components
: Wiederverwendbare React-Komponenten/lib
: Hilfsfunktionen und Dienstprogramme/data-access
: Datenbankzugriff und Datenmodelle
- layout.tsx - Haupt-Layout-Komponente
- page.tsx - Hauptseiten-Komponente
- header.tsx - Header-Komponente
- not-found.tsx - 404-Seiten-Komponente
- error.tsx - Fehlerseiten-Komponente
- globals.css - Globale CSS-Stile
- actions.ts - Admin-Aktionen
- create-user-form.tsx - Formular zum Erstellen von Benutzern
- page.tsx - Admin-Hauptseite
- options.ts - NextAuth Optionen
- route.ts - NextAuth API-Route
- route.ts - Download API-Route
- route.ts - Benutzer API-Route
- actions.ts - Browse-Aktionen
- page.tsx - Browse-Hauptseite
- task-card.tsx - Aufgabenkarten-Komponente
- actions.ts - Aktionen zum Erstellen von Aufgaben
- create-task-form.tsx - Formular zum Erstellen von Aufgaben
- page.tsx - Seite zum Erstellen von Aufgaben
- TaskView.tsx - Detailansicht einer Aufgabe
- actions.ts - Aufgaben-bezogene Aktionen
- actions.ts - Aktionen für Benutzeraufgaben
- page.tsx - Seite zur Anzeige von Benutzeraufgaben
- user-task-card.tsx - Komponente für Benutzeraufgabenkarten