Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zouloux/pasta

Pasta Devops - Self-host dockerized applications and deploy projects on VPS
https://github.com/zouloux/pasta

bash ci debian devops docker docker-compose gitea nginx self-host

Last synced: about 1 month ago
JSON representation

Pasta Devops - Self-host dockerized applications and deploy projects on VPS

Awesome Lists containing this project

README

        




Pasta Devops










## About

**Pasta** is a minimalist set of scripts and conventions to self-host **Docker Applications** and deploy **Web Projects** on **Debian based VPS servers**.

In other words, it's an **Open-source Self-Hosted alternative to CloudFlare, Netlify, Vercel or Heroku**.

## Features

- **[One line server install script](https://zouloux.github.io/pasta/#/00.server/00.install/02.install-pasta-server)**
- Has **sub-domains routing** and **automatic SSL generation** thanks to [Nginx proxy](https://github.com/nginx-proxy/nginx-proxy) and [acme-companion](https://github.com/nginx-proxy/acme-companion).
- Comes with a client **[node package](https://www.npmjs.com/package/@zouloux/pasta-cli)** for **Git Projects** deployments and **servers managements**.
- Headless by default and **SSH based** for admin

**Pasta Server** comes with :
- A set of [scripts](https://zouloux.github.io/pasta/#/00.server/01.server-scripts/00.available-scripts) an tools ( `lazydocker` / `htop` / `l` / `ll` )
- A nice preconfigured [.bashrc](https://github.com/zouloux/pasta/blob/main/server/.bashrc) file

With those script and conventions, you will be able to :
- Host [Docker Applications](https://zouloux.github.io/pasta/#/00.server/02.applications/00.list)
- Host your projects in **staging phase** ( with an HTTP password for example )
- Host your projects in **production phase** with **zero-downtime**
- Host Git repositories and their CI ( with [Gitea](https://zouloux.github.io/pasta/#/./00.server/02.applications/00.gitea) or Gitlab )

**But also :**
- Create **secured workspaces** for any project to **work with other developers** and share data
- **Sync** projects files between branches ( for example, `cms.sqlite` and `uploads` directories )
- Deploy specific branches of your git projects with **zero-downtime**

**Pasta CLI** node package :
- `pasta init` to create a new deployable project
- `pasta deploy` to deploy the current project on the server
- `pasta connect` to connect with SSH to the server
- `pasta sync` to sync data between servers and branches
- `pasta server stats` to get stats of a server ( ram / cpu / disk )
- and more

## Documentation

## πŸ’Ώ [Install Pasta Server](https://zouloux.github.io/pasta/#/00.server/00.install/02.install-pasta-server)
## πŸš€ [Install Pasta CLI](https://zouloux.github.io/pasta/#/01.client/00.install-pasta-cli.md)
## ⚑️ [Quick start](https://zouloux.github.io/pasta/#/quick-start)
## πŸ“ΊοΈ [Project Demo](https://zouloux.github.io/pasta/#/demo)
## πŸ“• [Complete documentation](https://zouloux.github.io/pasta/)