Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/floatplane-dev/floatplane-cli
A command line tool for setting up and managing servers. ⛵
https://github.com/floatplane-dev/floatplane-cli
Last synced: about 1 month ago
JSON representation
A command line tool for setting up and managing servers. ⛵
- Host: GitHub
- URL: https://github.com/floatplane-dev/floatplane-cli
- Owner: floatplane-dev
- License: mit
- Created: 2022-12-16T20:54:14.000Z (about 2 years ago)
- Default Branch: development
- Last Pushed: 2023-11-25T09:48:45.000Z (about 1 year ago)
- Last Synced: 2023-11-25T10:28:26.880Z (about 1 year ago)
- Language: Shell
- Size: 43.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# floatplane-cli
A command line tool for setting up and managing servers. ⛵
### 1. Sets up servers
```bash
fp setup server
```This command will:
- set up a unique SSH connection with your server
- create a sudo user
- locks down the root user 🔒
- prevent password logins
- close all ports except HTTP, HTTPS and SSH
- configure and activate firewall
- configure certbot
- set Fish as default shell 🐠
- spin up Nginx
- install tools:
- git
- curl
- nginx
- certbot
- ufw
- fish
- rbenv
- NVM
- Node
- NPM
- PNPM
- Yarn
- PM2
- Deno 🦕Tested and optimised for Debian servers spun up at [Vultr](https://www.vultr.com) or [Digital Ocean](https://www.digitalocean.com).
### 2. Sets up projects
```bash
fp setup project
```This command will:
- Set up a Node, Deno or Ruby based project on your server
- Configure Nginx to direct your domain to your project
- Set up a deployment hook for CLI tools to hit### 3. Deploy a project
```
fp deploy
```This command will:
- Ask you which project to deploy
- Hit the deployment hook of your project to deploy the latest production codeIdeally have your CI tools do this. But yes, sometimes a manual deploy is necessary.
---
### How to install this CLI
Please first sanity check if `echo $PATH` includes `/usr/local/`. If yes, continue.
```bash
git clone [email protected]:floatplane-dev/floatplane-cli.git
cd floatplane-cli/
./install.sh
```Then finally test by running `fp` should show you a success message.
### Upgrade the CLI
```bash
cd floatplane-cli/
git pull
./install.sh
```