* feat: move do_setup to new unified format at root of ansible/ dir to allow sharing roles, inventory with playbooks for other deployment types * fix: pass ansible lint * update do settings to current deployment: - bump main node params - add additional settings to helm values template --------- Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
2.5 KiB
2.5 KiB
DigitalOcean
Playbook Path: ansible/playbooks/install_microk8s.yml
This playbook provides an easy way to install Browsertrix Cloud on DigitalOcean. It automatically sets up Browsertrix with LetsEncrypt certificates.
Requirements
To run this ansible playbook, you need to:
- Have a DigitalOcean Account where this will run.
- Create a DigitalOcean API Key which will need to be set in your terminal sessions environment variables
export DO_API_TOKEN
doctl
command line client configured (rundoctl auth init
)- Create a DigitalOcean Spaces API Key which will also need to be set in your terminal sessions environment variables, which should be set as
DO_AWS_ACCESS_KEY
andDO_AWS_SECRET_KEY
- Configure a DNS A Record and CNAME record.
- Have a working python and pip configuration through your OS Package Manager
Install
- Clone the repo:
git clone https://github.com/webrecorder/browsertrix-cloud.git
cd browsertrix-cloud
- Install the Dependencies through pipenv
cd ansible
pip install pipenv
pipenv install
pipenv shell
-
Look at the configuration options and modify them or pass them as extra variables as shown below. If you haven't configured
kubectl
, please enable theconfigure_kube
option -
Run the playbook:
ansible-playbook do_setup.yml -e project_name="your-project" -e superuser_email="you@yourdomain.com" -e domain="yourdomain.com"
You may optionally configure these command line parameters through the group_vars file
Upgrading
-
Run
git pull
-
Run the playbook:
ansible-playbook do_setup.yml -e project_name="your-project" -e superuser_email="you@yourdomain.com" -e domain="yourdomain.com" -t helm_upgrade
Uninstall
You can tear down your deployment through ansible as well. By default ansible will dump all the databases into your DO space. You can configure an option to disable this feature.
ansible-playbook playbooks/do_teardown.yml -e project_name="your-project" -e superuser_email="you@yourdomain.com" -e domain="yourdomain.com"