fab-city-software-kit/README.md
2023-03-29 17:33:53 +02:00

5.5 KiB
Raw Permalink Blame History

Interfacer

Fab City Software Kit for Kubernetes

Documentation | Website | Blog

License Matrix

Welcome to the Fab City Software Kit! This Repo is designed to be a lightweight way to configure the Fab City Software Kit applications. Fab City Software Kit is a bundle of Applications to enabling a data-based circular economy via global collaboration and local production.

About the INTERFACER Project

The goal of the INTERFACER project is to build the open-source digital infrastructure for Fab Cities.

Our vision is to promote a green, resilient, and digitally-based mode of production and consumption that enables the greatest possible sovereignty, empowerment and participation of citizens all over the world.

We want to help Fab Cities to produce everything they consume by 2054 on the basis of collaboratively developed and globally shared data in the commons.

To know more DOWNLOAD THE WHITEPAPER.

Table of Contents

🚀 Getting Started

Kubernetes introduction

Please refer to our introductory guide for a brief overview of Kubernetes setup, cluster sizing, command-line tools, and security considerations.

Repository structure

├── base                           # kustomize global objects folder
│   ├── kustomization.yaml         # kustomize global application config
│   └── ...                        # kustomize global cluster objects
├── apps                           # kustomize global applications folder
│   ├── gitea                      # kustomize global application folder
│   │   ├── kustomization.yaml     # kustomize global application definition
│   │   ├── charts                 # helm global chart config folder
│   │   └── ...                    # kustomize global application objects
│   └── ...                        # kustomize global applications objects
├── overlays                       # kustomize environment overrides
│   ├── dev                        # kustomize environment specific
│   │   ├── kustomization.yaml     # kustomize environment definition
│   │   └── cert-manager           # kustomize applications folder
│   │       ├── kustomization.yaml # kustomize application config
│   │       └── ...                # kustomize application objects
│   └── ...                        # kustomize environment folder
├── .envrc                         # direnv support file
└── flake.nix                      # nix flake for local runtime dependency

⚙️ Dependencies

Install kubectl

kubectl is the most commonly used CLI to manage a Kubernetes cluster. The installation instructions are available here.

Install helm

helm is a Command Line Interface which will automate chart management and installation on your Kubernetes cluster. To install Helm, follow the Helm installation instructions.

💾 Install Fab City Software Kit

git clone https://gitlab.fabcity.hamburg/software/fab-city-software-kit/
cd fab-city-software-kit
kubectl kustomize --enable-helm overlays/dev | kubectl apply -f -

📖 Documentation

Tools

Helm Charts

👤 Contributing

Any new contribution is more than welcome in this project! If you want to know more about the development workflow or want to contribute, please visit our contributing guidelines for detailed instructions!

💼 License

AGPL-3.0. © 2023 Fab City Hamburg e. V.