

Добро пожаловать в батареи, включенные - окончательную платформу для современной разработки услуг! Наша программная платформа, основанная на Kubernetes и с открытым исходным кодом, дает вам невероятный, инфраструктурный опыт в целом благодаря интуитивному пользовательскому интерфейсу и расширенной автоматизации.
В этом репо вы найдете все, что вам нужно, чтобы внести свой вклад в разработку. От кода и сценариев до документации и информации, это центр всех батарей .
Давайте построим что -то удивительное вместе!
Самый простой метод - использовать наш размещенный пользовательский интерфейс для настройки установки. Затем используйте сценарий установки беззависимости для загрузки нашего инструмента bi , который запустит Kubernetes (локально через тип или на облачном провайдере через Pulumi), все зависимости контейнеров с открытым исходным кодом и батареи включали сервер управления.
bi и запустите установку с JWK, подписанную Home Base.Если вы хотите попробовать все это в течение короткого времени, не подписываясь, это возможно. Тем не менее, установка перестанет работать после нескольких часов невозможности сообщать о статусе.
bi с последнего выпуска GitHubmaster , запустите bi start bootstrap/local.spec.json Чтобы начать разработку или изменение кода, убедитесь, что ваша операционная система настроена и готова к работе. Мы рекомендуем использовать машину Linux, но наш код должен работать над любой системой с демона Docker (или совместимым) и Unix-подобной оболочкой. Нам понадобится несколько зависимостей, ASDF, а затем начать кластер Kubernetes, настроенный для разработки.
В зависимости от вашего распределения Linux вам нужно установить следующие зависимости:
Для систем на основе Ubuntu/APT:
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-chromedriverДля систем на основе Fedora/DNF:
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 chromedriverПосле установки зависимостей убедитесь, что Docker включен, и ваш пользователь имеет правильные привилегии:
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp dockerДля MacOS вам нужно будет установить следующие зависимости в дополнение к Docker Desktop или Podman.
brew install cmake flock direnvasdf ASDF является менеджером версий для нескольких языков. Мы используем его для управления инструментами, которые полезны в проекте. Вам нужно будет установить asdf и несколько плагинов:
git clone https://github.com/asdf-vm/asdf.git ~ /.asdf --branch v0.14.0Затем добавьте следующее в свой профиль Bash (другие раковины будут немного различаться):
. $HOME /.asdf/asdf.sh
. $HOME /.asdf/completions/asdf.bash
eval " $( direnv hook bash ) "Затем установите все необходимые плагины:
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 Этот монорепо содержит несколько деталей, которые объединяются для создания батареи, включенных платформы. bix - это наш инструмент разработки, который помогает управлять различными частями проекта.
Tldr: bix bootstrap && bix dev
static содержит код, который создает и развертывает включенные батареи .
Общественные сообщения в static/src/content/posts .
Есть другие страницы документов в static/src/content/docs .
Это главный каталог. Он использует феникс -фреймворк, и в platform_umbrella/apps существует несколько различных приложений эликсира, в то время как глобальная конфигурация находится в platform_umbrella/config .
Это приложение для общих компонентов и пользовательского интерфейса. Он используется в веб -Интернете сервера управления и домашним сервером и запускает экземпляр разработки в разработке.
Это основное ecto -репо для сервера управления, который установлен на Kubernetes клиента.
Это веб -приложение Phoenix. В основном это Phoenix.Component , Phoenix.LiveComponent и Phoenix.LiveView . Общепризнанно используя CSS Tailigh в качестве стиля.
Это код для получения использования счетов и его хранения. Это будет централизованный домашний сервер, о котором все кластеры сообщают о обновлениях версий и выставлении счетов.
Это пользовательский интерфейс для выставления счетов и начинающий новые кластеры.
Чтобы запустить свой рост кластера Kubernetes, запустите службы, включая Postgres, создайте DB, и заседайте их с кратким изложением.
bix bootstrapЗатем запустите управление, а также домашние веб -серверы и фоновые процессы. Это также откроет консоль IEX, где вы можете изучить статус процесса:
bix devТеперь доступно три веб -сервера:
Чтобы открыть полностью настроенный редактор просто компакт -диск в основной DIR, а затем откройте рабочее пространство everything :
cd batteries-included && code .vscode/everything.code-workspace