mirror of
https://github.com/fluencelabs/node-distro
synced 2025-05-29 15:41:24 +00:00
* Isolate stage, testnet and krasnodar * Use one node as bootstrap * Fix json format * Setup ssh-agent inside deploy container Workaround for `Needed to prompt for a connection or sudo password, but input would be ambiguous in parallel mode` * Add private key of any format * Cleanup * List available command by default when no CMD provided * explain --list Co-authored-by: folex <0xdxdy@gmail.com>
How to deploy Fluence
- Edit deployment_config.json to your needs (explanations: TBD)
- Install docker:
fab install_docker
- Edit
fluence.yml
andfluence_bootstrap.yml
to your needs - Deploy fluence:
fab deploy_fluence
- If you need https, deploy caddy:
fab deploy_caddy
- If you need slack notifications about containers state, deploy watchdog:
fab deploy_watchdog
Fluence deployment scripts and configs
deployment_config.json
– contains list of IPs to use for deployment
fab deploy_fluence
– deploys fluence, mediated by fluence.yml
and fluence_bootstrap.yml
fab install_docker
– installs docker and docker-compose (+ haveged)
fab deploy_watchdog
– deploys a watchdog to monitor containers (change SECRET
to desired webhook URL)
fab deploy_caddy
– deploys Caddy 2.0, configured in code
Prometheus
/prometheus
contains basic configuration file, HTML consoles are TBD
How to deploy Fluence with docker
- Edit
fluence.yml
andfluence_bootstrap.yml
to your needs - Build image:
docker build -t deploy .
- Run
docker run -v $HOME/.ssh:/root/.ssh:ro deploy deploy_fluence
(you can usedeploy_caddy
ordeploy_watchdog
instead ofdeploy_fluence
as well)
macOS without docker
If you're on macOS, and want to avoid using Docker, then this section is for you.
You will need to use pyenv
to access Python 2.
brew install pyenv openssl@1.1
pyenv install 2.7.18
pyenv local 2.7.18
pyenv exec pip2 install -r requirements.txt --global-option=build_ext --global-option="-L/opt/homebrew/opt/openssl@1.1/lib" --global-option="-I/opt/homebrew/opt/openssl@1.1/include"
pyenv exec fab deploy_fluence