Skip to content

Commit

Permalink
README + docker-restart.sh add
Browse files Browse the repository at this point in the history
  • Loading branch information
ikreymer committed Aug 25, 2021
1 parent 9a3356a commit f1a816b
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 2 deletions.
37 changes: 35 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ Browsertrix Cloud is a cloud-native crawling system, which supports a multi-user

The system currently includes support for the following:

- Fully API-driven, with OpenAPI specification for all APIs.
- Multiple users, registered via email and/or invited to join Archives.
- Crawling centered around Archives which are associated with an S3-compatible storage bucket.
- Users may be part of multiple archives and have different roles in different archives
Expand All @@ -14,9 +15,41 @@ The system currently includes support for the following:
- Crawl status is tracked in the DB (possible crawl states include: Completed, Partially-Complete (due to timeout or cancelation), Cancelation, Failure)


When deployed in Kubernetes, failed crawls are automatically retried. Scheduling is handled via Kubernetes Cronjobs.
## Deploying to Docker

To deploy via local Docker instance, copy the `config.sample.env` to `config.env`.

Docker Compose is required.

Then, run `docker-compose build; docker-compose up -d` to launch.

To update/relaunch, use `./docker-restart.sh`.

The API should be available at: `http://localhost:8000/docs`


Note: When deployed in local Docker, failed crawls are not retried currently. Scheduling is handled by a subprocess, which stores active schedule in the DB.



## Deploying to Kubernetes


To deploy to K8s, `helm` is required. Browsertrix Cloud comes with a helm chart, which can be installed as follows:

`helm install -f ./chart/values.yaml btrix`

This will create a `browsertrix-cloud` service in the default namespace.

For a quick update, the following is recommended:

`helm upgrade -f ./chart/values.yaml btrix ./chart/ --recreate-pods


Note: When deployed in Kubernetes, failed crawls are automatically retried. Scheduling is handled via Kubernetes Cronjobs, and crawl jobs are run in the `crawlers` namespace.



when deployed in local Docker, failed crawls are not retried currently. Scheduling is handled by a subprocess, which stores active schedule in the DB.

Browsertrix Cloud is currently in pre-alpha stages and not ready for production.

1 change: 1 addition & 0 deletions docker-restart.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docker-compose build; docker-compose kill; docker-compose rm -f; docker-compose up -d

0 comments on commit f1a816b

Please sign in to comment.