Skip to content
Snippets Groups Projects
Commit f69a19b7 authored by Bryan BRANCOTTE's avatar Bryan BRANCOTTE
Browse files

add summary on how the doc is organized

parent 319e5a95
No related branches found
No related tags found
No related merge requests found
Welcome to Shiny-K8s's documentation! Welcome to Shiny-K8s's documentation!
================================================= =================================================
Introduction
--------------------------------------------------
At the bioinformatics hub of Institut Pasteur - Paris, our Shiny-K8s toolkit simplifies the deployment of R Shiny and shiny-python apps. It uses Docker, Kubernetes, Helm, and GitLab-CI/CD for automated deployment. It promotes software developement best practice with GitLab source hosting and new instance automatically deployed for any new branch. Features include auto-scaling, updates without downtime, persistent storage, and private project content. The toolkit provides step-by-step documentation, and is available under an MIT license. At the bioinformatics hub of Institut Pasteur - Paris, our Shiny-K8s toolkit simplifies the deployment of R Shiny and shiny-python apps. It uses Docker, Kubernetes, Helm, and GitLab-CI/CD for automated deployment. It promotes software developement best practice with GitLab source hosting and new instance automatically deployed for any new branch. Features include auto-scaling, updates without downtime, persistent storage, and private project content. The toolkit provides step-by-step documentation, and is available under an MIT license.
The toolkit is based on GitLab project for hosting the source code which encourages reproducibility, indeed every change in source code is commited, tracked, and versionized, thus we always know who made what. When it comes to projects hosted in a git repository, using branches is also a good practice for introducing new features, fixing issues, or simply testing data and libraries updates. With every new branch, the toolkit automatically starts a new instance of the application, allowing you to test and share this new version of your application before officially publishing it, thanks to the continuous Integration and continuous deployment (CI/CD). The toolkit is based on GitLab project for hosting the source code which encourages reproducibility, indeed every change in source code is commited, tracked, and versionized, thus we always know who made what. When it comes to projects hosted in a git repository, using branches is also a good practice for introducing new features, fixing issues, or simply testing data and libraries updates. With every new branch, the toolkit automatically starts a new instance of the application, allowing you to test and share this new version of your application before officially publishing it, thanks to the continuous Integration and continuous deployment (CI/CD).
...@@ -9,7 +12,18 @@ For end-user and ease of use, the toolkit propose togglable features such as aut ...@@ -9,7 +12,18 @@ For end-user and ease of use, the toolkit propose togglable features such as aut
The toolkit comes with step-by-step documentation guiding the users to use the toolkit, configure the project and how to estimate and ask resources in the Kubernetes clusters. The toolkit comes with step-by-step documentation guiding the users to use the toolkit, configure the project and how to estimate and ask resources in the Kubernetes clusters.
In terms of security, the app is hosted in a container in read-only, with an applicative user (i.e not root). This means that in case of security issue in the source code of the app or shiny, the source code of the app cannot be changed by malicious attacker. This also means that an application cannot see the private data of another application. The docker image is built by ourselves, reducing the exposition to unmaintained images that have known security issues. In terms of security, the app is hosted in a container in read-only, with an applicative user (i.e not root). This means that in case of security issue in the source code of the app or shiny, the source code of the app cannot be changed by malicious attacker. This also means that an application cannot see the private data of another application. The docker image is built by ourselves, reducing the exposition to unmaintained images that have known security issues.
This Documentation is composed of several parts depending on the user profile. How documentation is organized
--------------------------------------------------
This documentation is composed of several parts depending on the user profile.
For user, this documentation will guide you in
how to configure your gitlab project,
and then
configure the docker image that will host your application.
Once configured, you will be guided to run you app locally for test purpose,
on a kubernetes cluster for dev and prioduction purpose,
and as a fallback in a virtual machine in production if you don't have access to kubernetes cluster.
.. toctree:: .. toctree::
:maxdepth: 5 :maxdepth: 5
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment