First usage

Start the always-running controlcenter

This starts a Docker stack with following roles:

  • traefik: reverse proxy that reroutes traffic to the correct container and takes care of SSL certificates
  • ssh_agent: container that is used as proxy for your ssh keys, so they have to be added only once
  • dns: dnsmasq container that is used as local DNS resolver for the specified tld and project prefix

see the command info for useful flags.

launchpad controlcenter start

Add the root_ca to your local certificate store

To be able to use ssl certificates, a valid root certificate is needed.
This command will create and add the CA certificate to your system.

launchpad controlcenter install_ca

Enable support for NFS mounts (MacOS only)

To be able to mount projects file with NFS, your system needs to allow exporting those folders as NFS mounts.
These folders are only exported locally, and not exposed for anybody else.

This command needs to be executed with admin privileges, as it needs to change some system files.

sudo launchpad controlcenter enable_nfs

Load your local ssh key(s) into the ssh_agent container

This should ask your passphrase (if not, add one!)
The path has to be absolute, otherwise the key can't be loaded.

launchpad controlcenter add_ssh_key ~/.ssh/id_rsa

Add the aliases to your shell environment

To have automatic aliases in your shell for current en future commands of launchpad, add the following at the end of your shell config file (~/.bashrc, ~/.zshrc, ~/.profile, ...)

source /dev/stdin <<<"$(launchpad aliases)"

Restart your shell or open a new window, and see of the next commands work:

dlpc status

Default available aliases

  • dlp -> launchpad
  • dlpp -> launchpad project
  • dlpc -> launchpad controlcenter