Scumblr with Docker
This container is derived from https://github.com/ahoernecke/docker_scumblr
This repo contains everything you need to deploy a basic instance of Scumblr and Sketchy. Scumblr is a Netflix open source project that allows performing periodic searches and storing / taking actions on the identified results. Sketchy is a Netflix open source project that performs screen captures of a URL.
If you just want to quickly test the application, start with the deployment section below.
This section discusses required/optional configuration that can be done prior to deploying Scumblr. Configuration is broken up into the following sections:
- API Keys (required for most Search providers to work)
- Admin User (Setup admin credentials)
- Database (Use a persistent database instead of the default ephemeral SQLite db)
Scumblr requires API keys to function. Information on obtaining these keys can be found in the wiki, here: https://github.com/Netflix/Scumblr/wiki/Configuration
Once obtained, these should be setup using environment variables (see Environment Variables below).
The default configuration will create the following admin user:
These credentials can be set using the
SCUMBLR_ADMIN_PASSWORD environment variables (see Environment Variables below).
The default database will be an onboard SQLite db. This will work for testing but will be lost if the container terminates. To configure a permanent database use the environment variables (see Environment Variables below).
This docker container ships with a self-signed cert to be used for SSL. To use a custom key pair/certificate replace the server.key and server.crt files in config/nginx
The following are environment variables available to configure scumblr:
SCUMBLR_HOSTis the default hostname for scumblr (used for email notifications, etc.) i.e. "scumblr.com"
SCUMBLR_PROTOCOLis the default protocol, i.e. "https"
SCUMBLR_DB_TYPEis the database type, i.e. "mysql"
SCUMBLR_CREATE_DBruns rake db:create if true. For initial DB setup.
SCUMBLR_LOAD_SCHEMAruns rake db:schema:load. For initial DB setup. Will reset DB to default!
SCUMBLR_RUN_MIGRATIONSruns rake db:migrate if true. Will update database with migrations if included.
SCUMBLR_SEED_STATUSEScreates a default set of statuses if set to "true"
SCUMBLR_SEED_ADMINcreates an admin user (firstname.lastname@example.org/password) if no users exist and SEED_ADMIN set to "true"
SCUMBLR_ADMIN_USERsets the initial super user (defaults to email@example.com)
SCUMBLR_ADMIN_PASSWORDsets the initial super user's password (defaults to password)
RAILS_ENVselects a rails environment (development, staging, production)
EBAY_ACCESS_KEYis the Ebay key, with information on how to obtain that here
FACEBOOK_APP_SECRETare the Facebook API keys. Information on how to get those is coming soon.
GOOGLE_APPLICATION_VERSIONare the Google developer keys, with information on how to obtain those here
YOUTUBE_APPLICATION_VERSIONare the Youtube developer keys. Information on how to get those is coming soon.
TWITTER_ACCESS_TOKEN_SECRETare the Twitter developer keys, with information on how to obtain that here
This section includes instructions on creating and deploying a container running Scumblr and Sketchy.
- Pull this repo from Github, build the container, and run it.
git clone https://github.com/bprodoehl/docker-scumblr cd docker-scumblr # Build the docker image docker build -t scumblr . #Run the container docker run -p 80:80 -p 443:443 scumblr
Visit your server's domain name or IP in a browser
Login with the credentials you specified (or the default if not changed: firstname.lastname@example.org/password)
A more advanced deployment scenario is provided in the launch-scumblr.sh script. This will create a MySQL database container using the official MySQL repository in the Docker Hub, and will configure that database for UTF8 character set, which is critical if you will have any international search results. It will then spin up the scumblr container, linked to that database and set to use the local Sketchy.