GithubHelp home page GithubHelp logo

infra's Introduction

Personal Infrastructure

Here you can find some of configuration files I use to setup my personal infrastructure. It uses Pulumi to manage the Kubernetes cluster and the applications running on it.

Repository Structure

  • packages/core: The handy utility wrappers around the Pulumi SDK and some common infrastructure components;
  • packages/<package>: The ready-to-use application and their infrastructure components;
  • packages/<package>-crds: The generated SDK for SRDs of the application;
  • stacks/: The final Pulumi stacks, may contain some environment-specific configuration.

Usage

Feel free to use this repository as a reference or a starting point for your own infrastructure.

You can also add it as a submodule and use some parts of it in your own repository:

git submodule add [email protected]:Exeteres/infra.git lib

If you are using Yarn, you can add it as a workspace:

// package.json
{
  "workspaces": ["lib/packages/*"]
}

Then you can reference the packages in your stacks:

// stacks/<my-stack>/package.json
{
  "dependencies": {
    "@infra/core": "workspace:*",
    "@infra/<package>": "workspace:*"
  }
}

Run yarn to install and link the packages.

To see the example of how to use the packages, check the stacks/ folder.

Ready-to-Use Applications

  • Zitadel: The Identity and Access Management solution;
  • Mailu: The Mailu mail server;
  • Factorio: The Factorio game server.

License

This repository is licensed under the MIT License.

infra's People

Contributors

exeteres avatar

Stargazers

BeiXiao avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.