mirror of
https://github.com/getlago/lago.git
synced 2024-12-22 22:33:20 +07:00
Open Source Metering and Usage Based Billing API ⭐️ Consumption tracking, Subscription management, Pricing iterations, Payment orchestration & Revenue analytics
analyticsbillingclickhousefintechinvoicesmeteringopen-sourcepaymentspricingpricing-data-sciencereactrubyself-hostedsubscriptionsusage-based-billing
api@2a6904234f | ||
front@c70186ccd8 | ||
traefik | ||
.gitignore | ||
.gitmodules | ||
docker-compose.dev.yml | ||
README.md |
Lago
Requirements
- Git
- Docker
- Homebrew (macOS only)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- OpenSSL
# Ubuntu/Debian sudo apt update sudo apt install openssl # MAC OS brew install openssl
Local Environment Setup
- First of all, you need to clone the Lago repo on your machine, since we're using Git submodules, here is the good command to do it
git clone --recurse-submodules git@github.com:getlago/lago.git
cd lago
# If you're not using bash, replace .bashrc with your shell rc, ei: ~/.zshrc
echo "export LAGO_PATH=${PWD}" >> ~/.bashrc
echo 'alias lago="docker-compose -f $LAGO_PATH/docker-compose.dev.yml"' >> ~/.bashrc
source ~/.bashrc
- Install
mkcert
and generate some certs for TLS usage
brew install mkcert nss
mkcert -install
cd $LAGO_PATH/traefik
mkdir certs
cd certs
mkcert -cert-file lago.dev.pem -key-file lago.dev-key.pem lago.dev "*.lago.dev"
- Add all custom domains to your
/etc/hosts
file
127.0.0.1 traefik.lago.dev
127.0.0.1 api.lago.dev
127.0.0.1 app.lago.dev
- Setup API
cp ./api/.env.dist ./api/.env
touch ./api/config/master.key
Populate the ./api/config/master.key
file with the value from 1Password.
Local Environment Commands
- Start your local environment
lago up -d db redis traefik
lago up front api
- Start enjoying your local Lago at https://app.lago.dev
Update your local copie of the code
git pull --recurse-submodules