Skip to content

cat-bro/python-fuku

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fuku

Fuku is a (young) system to help manage web application infrastructure using AWS. It's aim is to replicate some of the simplicity of Heroku without the cost.

Requirements:

Please install the following requirements prior to installing Fuku:

  • Python 3.6

  • ssh

  • ssh-agent

  • gpg

  • psql

  • awscli

Installation

Standard pip install:

pip install fuku

Quickstart for new configurations

  1. Configure your AWS credentials as usual (aws configure).

  2. fuku profile ls to see available profiles.

    fuku profile mk <name> to make the AWS groups etc required.

  3. fuku profile bucket <bucket> to set a workspace for Fuku.

  4. fuku region ls to see available regions.

    fuku region sl <region> to select a region.

  5. fuku cluster mk <name> to create a cluster.

Quickstart for existing configurations

  1. Configure your AWS credentials as usual (aws configure).

  2. fuku profile ls to see available profiles.

    fuku profile sl <name> to select your profile.

  3. fuku profile bucket <bucket> to set a workspace for Fuku.

  4. fuku region ls to see available regions.

    fuku region sl <region> to select a region.

  5. fuku cluster ls to see available clusters.

    fuku cluster sl <cluster> to select a cluster.

    Enter password to access cluster key file.

  6. fuku app ls to see available apps.

    fuku app sl <app> to select an app.

  7. fuku pg ls to see available DBs.

    fuku pg sl <db> to select a DB.

    Enter password to access PGPASS file.

At this point you have configured your session for a particular cluster, application, and database. For convenience it's best to cache the session for easy retrieval:

fuku session sv <name>

fuku session ld <name>

Downloading current DB

To download the current database:

fuku pg dump <dumpfile>

Upload DB

To overwrite a database with new content (CAUTION):

fuku pg restore <filename>

SSH into a node

To access one of the nodes in the cluster directly:

fuku node ssh <name>

Run an arbitrary command

To run a command:

fuku service run <task> <command>

This attaches to a running container from the specified task, then runs the provided command.

About

Easier Docker based deployments to AWS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.6%
  • Shell 2.4%