Giter Site home page Giter Site logo

docs's Introduction

GitOps Infrastructure & Application Delivery Platform

Install |  Twitter |  LinkedIn |  Slack |  Blog


Kubefirst CLI

The Kubefirst CLI creates instant GitOps platforms that integrate some of the best tools in cloud native from scratch in minutes.

Each of our platforms have install guides that detail the prerequesites, commands, and resulting platform that you'll receive.

In beta:

Overview

https://docs.kubefirst.io

kubefirst architecture diagram

Feed K-Ray

Feed K-Ray a GitHub star ⭐ above to bookmark our project and keep K-Ray happy!!

Star History Chart

Contributions

We want to thank all of our contributors who created a pull request to fix a bug, add a new feature or update the documentation. We also value a lot contributions in the form of bug reporting or feature requests: it helps us continuously make kubefirst better. Lastly, helping the users in our Slack community, or helping us share the love on social media are also ways in which you support us tremendously. We know your time is valuable, and we can't thank you enough for everything you do: we wouldn't be where we are without you!

A special thanks to DrummyFloyd who, in addition to adding support for k3s, is a champion all around within our community and the kubefirst project 🫶

If you want to help in any capacity, check CONTRIBUTING.md.

docs's People

Contributors

atreay avatar claywd avatar cristhianf7 avatar donnalux avatar echoboomer avatar fharper avatar jairofernandez avatar jarededwards avatar johndietz avatar kube1st avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs's Issues

How to deploy an application using the gitops repository

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Need documentation on how to deploy an app using the gitops repository

Code of Conduct

  • I agree to follow this project's Code of Conduct

Create a page for cert-manager

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Create a page for cert-manager:

  • cert provisioning
  • integration with ingress
  • auto renewal
  • letsdebug
  • cert backup
  • cert restore
  • link to the cert-manager docs on debugging

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

Explain the content of `atlantis.yml`

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Explain the content of atlantis.yml and describe the mapping to your Terraform entrypoints.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

Move documentation platform to Docusaurus

Move the documentation platform from mkdocs to Docusaurus.

We have some issues, missing features, or having some out of the box like:

  • better ability to manage complex documentation
  • better search integration using Algolia
  • better plugins ecosystem
  • better templating/modern look right out of the box
  • broken links detection
  • Google Analytics support will be removed from mkdocs
  • code snippet title

[Docs]: how to build Kubefirst with Gitlab flavor

Documentation for current build of kubefirst with Gitlab flavor:

Build and Install

Required flags:

export KUBEFIRST_GITOPS_BRANCH='main' --> can be replaced by the --gitops-branch flag in the init command.
export KUBEFIRST_METAPHOR_BRANCH='main' --> can be replaced by the --metaphor-branch flag in the init command.
export KUBEFIRST_AWS_NODES_SPOT='true' --> can be replaced by the --aws-nodes-spot flag in the init command.

Optional flags:

export KUBEFIRST_S3_SUFFIX='...' --> can be replaced by the --s3-suffix flag in the init command.
export KUBEFIRST_CLUSTER_NAME='...' --> can be replaced by the --cluster-name flag in the init command.

PS: The following commands must be run from the Kubefirst root directory.

To build the application:

go build -ldflags="-X github.com/kubefirst/kubefirst/configs.K1Version=1.10.1" .

To run the installer with the above environment variables already set:

./kubefirst init --profile default --cloud aws --region $REGION \
    --admin-email $EMAIL --hosted-zone-name $HOSTED_ZONE --git-provider gitlab

To run the installer without the above environment variables:

./kubefirst init --profile default --cloud aws --region $REGION \
    --admin-email $EMAIL --hosted-zone-name $HOSTED_ZONE --aws-nodes-spot \
    --cluster-name $CLUSTER_NAME --s3-suffix $S3_SUFFIX --gitops-branch $GITOPS_BRANCH --metaphor-branch $METAPHOR_BRANCH --git-provider gitlab

To create kubefirst witth console

./kubefirst cluster create --enable-console

SSL Backup

After a few minutes of creating the cluster, it is possible to backup the certificates using the following command:

./kubefirst backupSSL

After executing this command, an S3 bucket will be created in AWS with the name k1-$HOSTED_ZONE_NAME:

image
image
image
image

On the next install, the init command will look for an existing bucket in the cloud and reuse the certificate backups.

Destroy and Clean

To destroy all resources created by kubefirst create cluster:

./kubefirst cluster destroy

To destroy the paths $HOME/.k1, $HOME/.kubefirst and buckets created by kubefirst init:

./kubefirst clean --destroy-buckets --destroy-confirm 

To destroy only the paths $HOME/.k1 and $HOME/.kubefirst:

./kubefirst clean

[Docs]: how to build Kubefirst with GitHub flavor?

Documentation for current install of kubefirst with Github flavor:

Build and Install

Required flags:

export KUBEFIRST_GITOPS_BRANCH='main' --> can be replaced by the --gitops-branch flag in the init command.
export KUBEFIRST_METAPHOR_BRANCH='main' --> can be replaced by the --metaphor-branch flag in the init command.
export KUBEFIRST_AWS_NODES_SPOT='true' --> can be replaced by the --aws-nodes-spot flag in the init command.
export GITHUB_AUTH_TOKEN='...' # Personal GitHub token

Optional flags:

export KUBEFIRST_S3_SUFFIX='...' --> can be replaced by the --s3-suffix flag in the init command.
export KUBEFIRST_CLUSTER_NAME='...' --> can be replaced by the --cluster-name flag in the init command.

PS: The following commands must be run from the Kubefirst root directory.

To build the application:

go build -ldflags="-X github.com/kubefirst/kubefirst/configs.K1Version=1.10.1" .

To run the installer with the above environment variables already set:

./kubefirst init --profile default --cloud aws --region $REGION \
    --admin-email $EMAIL --hosted-zone-name $HOSTED_ZONE_NAME \
    --github-user $GITHUB_USER --github-owner $GITHUB_OWNER

To run the installer without the above environment variables (only GITHUB_AUTH_TOKEN):
Note: GITHUB_USER and GITHUB_OWNER must exist before running this command. GITHUB_USER is the owner of GITHUB_AUTH_TOKEN.

./kubefirst init --profile default --cloud aws --region $REGION \
    --admin-email $EMAIL --hosted-zone-name $HOSTED_ZONE --aws-nodes-spot \
    --cluster-name $CLUSTER_NAME --s3-suffix $S3_SUFFIX --github-user $GITHUB_USER \
    --github-owner $GITHUB_OWNER --metaphor-branch $METAPHOR_BRANCH --gitops-branch $GITOPS_BRANCH

To create kubefirst witth console

./kubefirst cluster create --enable-console

To create kubefirst witthout console

./kubefirst cluster create

SSL Backup

After a few minutes of creating the cluster, it is possible to backup the certificates using the following command:

./kubefirst backupSSL

After executing this command, an S3 bucket will be created in AWS with the name k1-$HOSTED_ZONE_NAME.

On the next install, the init command will look for an existing bucket in the cloud and reuse the certificate backups.

Destroy and Clean

To destroy all resources created by kubefirst create cluster:

./kubefirst cluster destroy

To destroy Github repositories:

./kubefirst action remove-github

To destroy the paths $HOME/.k1, $HOME/.kubefirst and buckets created by kubefirst init:

./kubefirst clean --destroy-buckets --destroy-confirm 

To destroy only the paths $HOME/.k1 and $HOME/.kubefirst:

./kubefirst clean

Add information on Vault security measures

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add information on Vault security measures, and point to Vault's documentation about security.

May want to add this to the security page, and link to it from the Vault one.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

Add a releases notes page with breaking changes

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add a releases notes page pointing to the GitHub release notes (to prevent content duplication) for details, but with all breaking changes listed.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Add details on Kubefirst use cases

What type of suggestions?

Missing Information

What page is concerned?

https://docs.kubefirst.io/kubefirst/overview.html

What is the issue?

Add more details on ways team can use k1. Feedback from Mitch (Mika M), in the Slack community:

From a high level, I was thinking some sequence diagrams would help me, to show the flow for different common ways a team would use kubefirst (management, like adding users; application development and CI/CD; augmenting it by adding additional tools to it). But it may just be a matter of me needing to re-read the docs a few more times

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: add information on how to backup GitLab

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add information on how to backup GitLab

We moved GitLab into the cluster when we added GitHub support on 1.9. Prior to this change, we had it running Omnibus GitLab on a virtual machine. Because of that, if you lost your Kubernetes cluster, the virtual machine was still in good shape, and you still had GitLab intact. Now that’s not longer the case, but there are steps you can take to backup GitLab and restore it on Kubernetes. We should document it, or at least point to the GitLab documentation about it.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

Add information on how to connect to AWS

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add information on how to connect to AWS.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: add how to reconnect information to the local FAQ

What type of suggestions?

Missing Information

What page is concerned?

https://docs.kubefirst.io/kubefirst/github/faq.html

What is the issue?

Add how to reconnect information to the local FAQ.

Based on @6za comment in kubefirst/kubefirst#751:

it seems to refer to ngrok webhook, as we need an ngrok tunnel to allow github to reach a local installation of kubefirst. This approach has some limitations:
1 - The tunnel is only open while the installer of the first install is still open and showing the handoof screen
2 - There is max window this tunnel is open, after that window of time expires ngrok close it.
3 - Up to know there is no way to "Re-connect" recreate the tunnel and update github webhook for atlantis.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Merge Argo CD pages

What type of suggestions?

Unclear Documentation

What page is concerned?

No response

What is the issue?

Merge Argo CD pages for GitHub, GitLab, and Local, as outside of the screenshots (which we can add all side by side), the content is the same.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Create a page for Argo Workflows

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Create a page for Argo Workflows

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: update README to be a summary of what to do

What type of suggestions?

Unclear Documentation

What page is concerned?

https://github.com/kubefirst/kubefirst/blob/main/README.md

What is the issue?

Restructure the README.md file to have three sections:

  1. What is Kubefirst
  2. Quickstart guide (point people to the documentation for more information)
  3. Contributing summary (point people to the future CONTRIBUTING.md for more information)

The README.md file should be quick to read, and easy to find information. The source of truth is the documentation.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Merge gitops pages

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Merge gitops pages for GitHub, GitLab, and Local, as outside of the screenshots (which we can add all side by side), the content is the same (small changes that can ben generic and don't add to the user understanding).

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: better URL structure

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Change the URL structure for the documentation to make it friendlier:

  • remove HTML file extension
  • remove one level of folders so https://docs.kubefirst.io/kubefirst/overview.html can be https://docs.kubefirst.io/overview.html to remove unuseful redundancy (maybe it's just a URL rewrite and not a docs structure change)

Code of Conduct

  • I agree to follow this project's Code of Conduct

Merge credit pages

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Merge credit pages from GitHub, GitLab, and Local into one top level credit page to minimize duplicated content.

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: add user management information

type: new page
status: pending
location: kubefirst/management.md

Acceptance criteria:

AC1: it describes what is management cluster
AC2: it give hints to the user how to access the management cluster
AC3: it tell the user what can be done in the management cluster

Add information on Terraform & Atlantis security measures

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add information on Terraform & Atlantis security measures

Maybe in the security documentation page instead, and pointing there.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

Add Terraform & Atlantis entrypoints information

What type of suggestions?

Missing Information

What page is concerned?

No response

What is the issue?

Add Terraform & Atlantis entrypoints information:

  • base
  • users
  • github
  • gitlab
  • vault

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

[Docs]: implement documentation versioning

What type of suggestions?

Wrong Information

What page is concerned?

No response

What is the issue?

Implement documentation versioning so people can have access to older version of the documentation if they used an older version of Kubefirst. May want to wait for changing the documentations platform.

This suggestion was written by @johndietz in mkdocs.yml

Code of Conduct

  • I agree to follow this project's Code of Conduct

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.