Zum Inhalt springen
TURNKEYGNU / LINUX
AnwendungenDokumentationBlogBildschirmfotosGitHubTurnKey Hub
文Deutsch
EnglishEspañol中文日本語PortuguêsDeutsch
Haus/Erstellen Sie ein neues Appliance mit TKLDev

Dokumentation

Erstellen Sie ein neues Appliance mit TKLDev

Die TKLDev docs Das Ziel dieser Seite ist es, einen einfachen Überblick über die Erstellung eines neuen Appliance zu schaffen.

Dies setzt voraus, dass Sie die TKLDev-Dokumente, haben eine Instanz von TKLDev läuft und haben bestätigt, dass alles funktioniert, wie es sollte von Aufbau eines Core ISO.

Voraussetzungen

Die Verwendung von Kommandozeilen ist erforderlich, von besonderer Bedeutung sind jedoch:

  • apt; z.B. apt-get; apt-cache etc. - unerlässlich für die Installation von Paketen
  • git; z.B. git clone; git commit; git push - unerlässlich für die Arbeit mit git Versionskontrolle
  • GitHub: Holen Sie sich ein kostenloses GitHub-Konto Wenn Sie noch keinen haben.
    • Primer auf Git und GitHub
  • Wenn Sie neu bei git/GitHub sind, richten Sie Ihren TKLDev für GitHub ein:
  • Setup git auf Ihrem TKLDev Server von Setzen eines Benutzernamens und E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail-E-Mail- (Verwenden Sie idealerweise die gleiche E-Mail wie Ihr GitHub-Konto).
  • Dann haben Sie 2 Optionen für die Authentifizierung; die URLs, die Sie für Ihr GitHub-Repo verwenden, hängen davon ab, welche Wahl Sie treffen:
    • SSH Meine Vorliebe und Empfehlung. Generieren Sie ein SSH Keypair (andere Abschnitte dieser Seite ignorieren) & Fügen Sie Ihren öffentlichen Schlüssel zu GitHub hinzu; oder
    • HTTPS - das sollte auch gut funktionieren, aber ich habe es nie benutzt, also bist du etwas alleine.

Los!

Dieser Prozess funktioniert für Entwicklung eines neuen Appliance. Obwohl es nicht der einzige Workflow ist.

git clone https://github.com/turnkeylinux-apps/<base-appliance-name>.git
mv <base-appliance-name> <new-appliance-name>
cd <new-appliance-name>
rm -rf .git
git-init
  1. Forschung Ihre Software und installieren Sie sie auf einer sauberen Installation von Appliance, der beste Ausgangspunkt. Lassen Sie es so funktionieren, wie es sollte, während Sie jeden Schritt sorgfältig dokumentieren. Ich mache das in einer VM und meine Dokumentation ist normalerweise Bash-Befehle.
  2. Entscheiden Sie sich für einen Namen für Ihr neues ApplianceOft wird das selbstverständlich sein, manchmal nicht so sehr...
  3. Klonen Sie in Ihrem TKLDev Appliance die Basis Appliance (die Sie in Schritt 1 entschieden haben) und benennen Sie das resultierende Verzeichnis (gemäß Ihrer Entscheidung in Schritt 2) in Ihren neuen Appliance-Namen um. Dann (re)initialisieren Sie es als Git-Repo.
  4. Erstellen Sie ein neues Repo auf GitHub den gleichen Namen wie Ihr neuer Appliance-Name, d.h. den Namen des neuen Repo.
  5. Synchronisieren Sie Ihr lokales Repo und Ihr GitHub (Remote) (und sich verpflichten).
  6. Beachten Sie, dass Pakete, die vom Standard-Repos installiert werden (d.h. TurnKey und Debian Standard-Stable-Repos), dem Plan hinzugefügt werden sollten; z.B. LAMP-Plan (und verpflichten sich)
  7. Erstellen Sie ein Installationsskript aus der in Schritt 1 erstellten Dokumentation und legen Sie es in ein Skript im Verzeichnis conf.d ein; z.B. LAMP Hauptkonf.d (und sich verpflichten).
  8. Und/oder Dateien können dem Overlay-Verzeichnis hinzugefügt werden; z.B. LAMP-Überlagerung (und sich verpflichten).
  9. Update readme (z.B.) LAMP README.rst Sie können die vorhandene als Vorlage verwenden, aber Sie werden wahrscheinlich eine größere Überarbeitung durchführen wollen.
  10. Update Changelog (z.B.) LAMP ChangelogAuch hier möchten Sie vielleicht einiges von dem, was es gibt, als Vorlage verwenden (obwohl Sie alle alten Informationen loswerden, da dies die erste Veröffentlichung eines neuen Appliance sein wird). Wenn Sie den Fortschritt Ihrer Arbeit verfolgen möchten Verwenden Sie das Changelog nichtErstellen Sie eine weitere Datei dafür.
  11. Sie können den Issue-Bereich Ihres GitHub-Repo für Bugs und geplante Funktionen verwenden, wenn Sie möchten.
  12. Entwickeln Sie Ihre Init-HooksAlle eindeutigen Faktoren wie Passwörter sollten entweder automatisch generiert werden (z. B. MySQL-Benutzerpasswort) oder interaktiv (z. B. ein Benutzerpasswort). Beachten Sie jedoch, dass interaktive inithooks erfordern die Fähigkeit, vorgefertigt werden.
  13. Ich mache zunächst root.patched'dann 'fab-chroot build/root.patched' zum Testen und Optimieren. Bauen unbeaufsichtigt und ohne Fehler und funktioniert wie erwartet in der Sandbox (Verpflichtung, wie Sie Änderungen vornehmen).
  14. Final Build ('make') und Test ISO (in einer VM).
  15. Feiern! :

     

Ich schlage vor, oft zu begehen. Dann ist es leicht zu sehen, was getan wurde und in welcher Reihenfolge. Sie können die Git-Geschichte später aufräumen, wenn Sie möchten. Normalerweise drücke ich nur immer wieder zu GitHub (einmal pro Sitzung). Obwohl manchmal die GitHub WebUI verwendet wird, um Ihren Code anzuzeigen, kann dies eine praktische Möglichkeit sein, alles an einem Ort zu sehen.

TURNKEYGNU / LINUX

Eigene Infrastruktur betreiben, ohne bei null anzufangen.

TurnKey erkunden
Über TurnKeyDokumentationHäufige FragenBlogGitHub
Frei und quelloffenStandardmäßig sicherSofort einsatzbereit