

Willkommen bei Batterien - die ultimative Plattform für die moderne Serviceentwicklung! Unsere Softwareplattform basiert auf Kubernetes und Open-Source und bietet Ihnen ein unglaubliches All-Inclusive-Infrastrukturerlebnis dank einer intuitiven Benutzeroberfläche und einer fortschrittlichen Automatisierung.
In diesem Repo finden Sie alles, was Sie benötigen, um zur Entwicklung beizutragen. Von Code und Skripten bis hin zu Dokumentation und Informationen ist dies der Zentrum aller enthaltenen Dinge.
Lass uns zusammen etwas Erstaunliches bauen!
Die einfachste Methode ist die Verwendung unserer gehosteten Benutzeroberfläche, um eine Installation zu konfigurieren. Verwenden Sie dann das Installationsskript ohne Abhängigkeit, um unser bi Tool herunterzuladen, das Kubernetes (lokal über Sorte oder einen Cloud-Anbieter über Pulumi) startet, alle Open-Source-Container-basierten Abhängigkeiten und die Batterien enthalten Control Server.
bi -Version herunterladen und die Installation von JWK von Home Base starten.Wenn Sie das alles für kurze Zeit ausprobieren möchten, ohne sich anzumelden, ist dies möglich. Die Installation funktioniert jedoch nicht mehr, nachdem einige Stunden nicht in der Lage sind, den Status zu melden.
bi von der neuesten GitHub -Version heruntermaster run bi start bootstrap/local.spec.json Um den Code zu entwickeln oder zu ändern, stellen Sie sicher, dass Ihr Betriebssystem eingerichtet und bereit ist. Wir empfehlen die Verwendung eines Linux-Computers, aber unser Code sollte auf jedem System mit einem Docker-Daemon (oder kompatibel) und einer unixartigen Shell funktionieren. Wir benötigen ein paar Abhängigkeiten, ASDF und dann ein Kubernetes -Cluster, das für die Entwicklung konfiguriert ist.
Abhängig von Ihrer Linux -Verteilung müssen Sie die folgenden Abhängigkeiten installieren:
Für Ubuntu/APT-basierte Systeme:
sudo apt-get install -y docker.io build-essential curl git cmake
libssl-dev pkg-config autoconf
m4 libncurses5-dev inotify-tools direnv jq
# Building and Testing deps not needed for most uses
sudo apt-get install -y chromium-browser chromium-chromedriverFür Fedora/DNF-basierte Systeme:
sudo dnf install -y docker gcc gcc-c++ make curl git
cmake openssl-devel pkgconfig autoconf m4 ncurses-devel
inotify-tools direnv jq
# Building/Testing deps
sudo dnf install -y chromium chromedriverStellen Sie nach der Installation der Abhängigkeiten sicher, dass Docker aktiviert ist und Ihr Benutzer über die richtigen Berechtigungen verfügt:
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp dockerFür macOS müssen Sie zusätzlich zu Docker Desktop oder Podman die folgenden Abhängigkeiten installieren.
brew install cmake flock direnvasdf -Installation ASDF ist ein Versionsmanager für mehrere Sprachen. Wir verwenden es, um die Tools zu verwalten, die im Projekt nützlich sind. Sie müssen asdf und ein paar Plugins installieren:
git clone https://github.com/asdf-vm/asdf.git ~ /.asdf --branch v0.14.0Fügen Sie dann Ihr Bash -Profil Folgendes hinzu (andere Shells variieren geringfügig):
. $HOME /.asdf/asdf.sh
. $HOME /.asdf/completions/asdf.bash
eval " $( direnv hook bash ) "Installieren Sie dann alle benötigten Plugins:
asdf plugin add erlang
asdf plugin add elixir
asdf plugin add nodejs
asdf plugin add golang
asdf plugin add goreleaser
asdf plugin add kubectl
asdf plugin add shfmt
asdf plugin add awscli
asdf plugin add kind
asdf install Dieser Monorepo enthält mehrere Teile, die zusammenkommen, um die inklusiven Batterien zu bauen. bix ist unser Entwicklungstool, mit dem die verschiedenen Teile des Projekts verwaltet werden.
TLDR: bix bootstrap && bix dev
static enthält den Code, der enthaltene Batterien erstellt und bereitstellt.
Öffentliche Beiträge finden Sie in static/src/content/posts .
Es gibt andere DOCS -Seiten in static/src/content/docs .
Dies ist das Hauptverzeichnis. Es verwendet das Phoenix -Framework, und es gibt verschiedene Elixir -Anwendungen in platform_umbrella/apps während die globale Konfiguration in platform_umbrella/config liegt.
Dies ist die Anwendung für gemeinsame Komponenten und die Benutzeroberfläche. Es wird im Web -Web -Server -Web -Server -Web verwendet und führt eine Instanz von Storybook in der Entwicklung aus.
Dies ist das Haupt -ECTO -Repo für den Steuerserver, der auf den Kubernetes des Kunden installiert wird.
Dies ist die Phoenix -Webanwendung. Es ist hauptsächlich Phoenix.Component , Phoenix.LiveComponent und Phoenix.LiveView . Verwenden Sie Rückenwind -CSS als Styling ausgiebig.
Dies ist der Code, um die Abrechnungsnutzung zu erhalten und zu speichern. Es wird der zentralisierte Heimserver sein, den alle Cluster für Versionsaktualisierungen und Abrechnung melden.
Dies ist die Benutzeroberfläche für die Abrechnung und den Start neuer Cluster.
Um den Art Kubernetes -Cluster zu starten, starten Sie die Dienste einschließlich Postgres, erstellen Sie die DBs und säen Sie sie mit Zielzusammenfassung.
bix bootstrapStarten Sie dann die Steuerung und Home -Webserver und Hintergrundprozesse. Dies öffnet auch eine IEX -Konsole, bei der Sie den Prozessstatus untersuchen können:
bix devJetzt sind drei Webserver zugegriffen:
So öffnen Sie einen vollständig konfigurierten Editor CD einfach in das Hauptdurchdrehen und öffnen Sie dann den Workspace everything :
cd batteries-included && code .vscode/everything.code-workspace