kopia lustrzana https://github.com/piku/piku
Features before tooling
rodzic
9dfba4084a
commit
a433a68a1d
59
README.md
59
README.md
|
@ -61,6 +61,34 @@ I kept finding myself wanting an Heroku/CloudFoundry-like way to deploy stuff on
|
|||
|
||||
You can also deploy a `gh-pages` style static site using a `static` worker type, with the root path as the argument, and run a `release` task to do some processing on the server after `git push`.
|
||||
|
||||
### Virtual Hosts and SSL
|
||||
|
||||
`piku` has full virtual host support - i.e., you can host multiple apps on the same VPS and use DNS aliases to access them via different hostnames.
|
||||
|
||||
`piku` will also set up either a private certificate or obtain one via [Let's Encrypt](https://letsencrypt.org/) to enable SSL.
|
||||
|
||||
If you are on a LAN and are accessing `piku` from macOS/iOS/Linux clients, you can try using [`piku/avahi-aliases`](https://github.com/piku/avahi-aliases) to announce different hosts for the same IP address via Avahi/mDNS/Bonjour.
|
||||
|
||||
### Caching and Static Paths
|
||||
|
||||
Besides static sites, `piku` also supports directly mapping specific URL prefixes to filesystem paths (to serve static assets) or caching back-end responses (to remove load from applications).
|
||||
|
||||
These features are configured by setting appropriate values in the [`ENV`](./docs/ENV.md) file.
|
||||
|
||||
### Supported Platforms
|
||||
|
||||
`piku` is intended to work in any POSIX-like environment where you have Python, `nginx`, [`uWSGI`][uwsgi] and SSH: it has been deployed on Linux, FreeBSD, [Cygwin][cygwin] and the [Windows Subsystem for Linux][wsl].
|
||||
|
||||
As a baseline, it began its development on an original 256MB Rasbperry Pi Model B, and still runs reliably on it.
|
||||
|
||||
But its main use is as a micro-PaaS to run applications on cloud servers with both Intel and ARM CPUs, with Debian and Ubuntu Linux as target platforms.
|
||||
|
||||
### Supported Runtimes
|
||||
|
||||
`piku` currently supports apps written in Python, Node, Clojure, Java and a few other languages (like Go) in the works.
|
||||
|
||||
But as a general rule, if it can be invoked from a shell, it can be run inside `piku`.
|
||||
|
||||
## Install
|
||||
|
||||
`piku` can manage multiple apps on a single machine, and all you need is a VPS, Raspberry Pi, or other server.
|
||||
|
@ -70,7 +98,7 @@ There are two main ways of deploying `piku` onto a new server:
|
|||
* Use [`piku-bootstrap`](https://github.com/piku/piku-bootstrap) to reconfigure a new or existing Ubuntu virtual machine.
|
||||
* Use `cloud-init` when creating a new virtual machine or barebones automated deployment (check [this repository](https://github.com/piku/cloud-init) for examples).
|
||||
|
||||
### `piku` client
|
||||
## Manage - via the `piku` helper
|
||||
|
||||
To make life easier you can also install the [piku](./piku) helper into your path (e.g. `~/bin`).
|
||||
|
||||
|
@ -113,36 +141,9 @@ piku@piku:~/.piku/apps/dashboard$ ls
|
|||
data ENV index.html package.json package-lock.json Procfile server.wisp
|
||||
```
|
||||
|
||||
## Virtual Hosts and SSL
|
||||
|
||||
`piku` has full virtual host support - i.e., you can host multiple apps on the same VPS and use DNS aliases to access them via different hostnames.
|
||||
|
||||
`piku` will also set up either a private certificate or obtain one via [Let's Encrypt](https://letsencrypt.org/) to enable SSL.
|
||||
|
||||
If you are on a LAN and are accessing `piku` from macOS/iOS/Linux clients, you can try using [`piku/avahi-aliases`](https://github.com/piku/avahi-aliases) to announce different hosts for the same IP address via Avahi/mDNS/Bonjour.
|
||||
|
||||
## Caching and Static Paths
|
||||
|
||||
Besides static sites, `piku` also supports directly mapping specific URL prefixes to filesystem paths (to serve static assets) or caching back-end responses (to remove load from applications).
|
||||
|
||||
These features are configured by setting appropriate values in the [`ENV`](./docs/ENV.md) file.
|
||||
|
||||
## Supported Platforms
|
||||
|
||||
`piku` is intended to work in any POSIX-like environment where you have Python, `nginx`, [`uWSGI`][uwsgi] and SSH: it has been deployed on Linux, FreeBSD, [Cygwin][cygwin] and the [Windows Subsystem for Linux][wsl].
|
||||
|
||||
As a baseline, it began its development on an original 256MB Rasbperry Pi Model B, and still runs reliably on it.
|
||||
|
||||
But its main use is as a micro-PaaS to run applications on cloud servers with both Intel and ARM CPUs, with Debian and Ubuntu Linux as target platforms.
|
||||
|
||||
## Supported Runtimes
|
||||
|
||||
`piku` currently supports apps written in Python, Node, Clojure, Java and a few other languages (like Go) in the works.
|
||||
|
||||
But as a general rule, if it can be invoked from a shell, it can be run inside `piku`.
|
||||
|
||||
[dokku]: https://github.com/dokku/dokku
|
||||
[raspi-cluster]: https://github.com/rcarmo/raspi-cluster
|
||||
[cygwin]: http://www.cygwin.com
|
||||
[uwsgi]: https://github.com/unbit/uwsgi
|
||||
[wsl]: https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue