{"id":14524312,"url":"https://github.com/edv/docker-spotweb","last_synced_at":"2025-09-01T08:32:29.689Z","repository":{"id":46165355,"uuid":"78616143","full_name":"edv/docker-spotweb","owner":"edv","description":"Dockerfile to easily set up Spotweb using Docker on the Raspberry Pi (or any compatible arm chipset) and regular x86 chipsets","archived":false,"fork":false,"pushed_at":"2024-11-01T09:29:09.000Z","size":86,"stargazers_count":30,"open_issues_count":2,"forks_count":20,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-11-01T10:24:29.930Z","etag":null,"topics":["arm","docker","docker-image","dockerfile","movies","nzb","spotweb"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-11T08:00:10.000Z","updated_at":"2024-11-01T09:29:13.000Z","dependencies_parsed_at":"2024-02-20T16:58:03.740Z","dependency_job_id":"3b8ab2bc-89c4-4a7b-8296-b76c294a5099","html_url":"https://github.com/edv/docker-spotweb","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edv%2Fdocker-spotweb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edv%2Fdocker-spotweb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edv%2Fdocker-spotweb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edv%2Fdocker-spotweb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edv","download_url":"https://codeload.github.com/edv/docker-spotweb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231680117,"owners_count":18410099,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arm","docker","docker-image","dockerfile","movies","nzb","spotweb"],"created_at":"2024-09-04T12:01:23.661Z","updated_at":"2024-12-28T21:35:29.925Z","avatar_url":"https://github.com/edv.png","language":"Dockerfile","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Dockerfile to set up Spotweb on x86 and arm based systems\n\nThe main goal of this project is to easily set up Spotweb using Docker on the Raspberry Pi (or any compatible arm chipset) and regular x86 chipsets.\n\n## Getting started\n\nThe easiest way to get Spotweb up and running is using the included `docker-compose.yml` file. This will run Spotweb together with MySQL.\n\n```bash\ndocker compose up -d\n```\n\nHave a look at the rest of the documentation for more fine tuned configuration.\n\n## Advanced database configuration\n\nSpotweb requires a database to work. Out of the box this project supports MySQL, PostgreSQL and SQLite. Provide one or more of the following environment variables to configure the database:\n\n- **DB_ENGINE**, one of:\n  - `pdo_mysql` (MySQL, default)\n  - `pdo_pgsql` (PostgreSQL)\n  - `pdo_sqlite` (SQLite)\n- **DB_HOST** (default = `mysql`)\n- **DB_PORT** (default = `3306`)\n- **DB_NAME** (default = `spotweb`)\n- **DB_USER** (default = `spotweb`)\n- **DB_PASS** (default = `spotweb`)\n\n### Examples\n\nExample Docker Compose files are included in the `examples` directory.\n\n#### MySQL\n\nWhen no environment variables are configured, MySQL settings will be used as default.\n\nSee the included `examples/docker-compose-mysql.yml`.\n\n#### PostgreSQL\n\nTo use PostgreSQL have a look at `examples/docker-compose-postgres.yml` on how to set-up the environment variables and how to include the PostgreSQL database Docker container.\n\n#### SQLite\n\nSQLite is a light-weight serverless database engine and stores all content in a single file. Note that SQLite support in Spotweb is the least-tested database mode. Please report any issues to the [Spotweb project](https://github.com/spotweb/spotweb).\n\nSee `examples/docker-compose-sqlite.yml` for an example Docker Compose setup to use SQLite.\n\n- Change the `DB_ENGINE` variable to `pdo_sqlite`\n- Set the path to the database file in `DB_NAME` (e.g. `/data/spotweb.db3`, when the database does not exist it will be created)\n- Make sure your database directory (or file) is mounted as a volume to not lose all data when the container is rebuilt\n\n```bash\ndocker run -p 8085:80 \\\n  --name spotweb -d \\\n  -e DB_ENGINE=pdo_sqlite \\\n  -e DB_NAME=/data/spotweb.db3 \\\n  -v /local/path/to/spotweb-data:/data:rw \\\n  erikdevries/spotweb\n```\n\n#### External database\n\nTo connect to an external database configure the `DB_HOST`. Make sure the database server allows external access and correct credentials and/or port settings are configured.\n\n```bash\ndocker run -p 8085:80 \\\n  --name spotweb -d \\\n  -e DB_HOST=mysql.hostname \\\n  erikdevries/spotweb\n```\n\n## Configure Spotweb\n\n- Visit `http://localhost:8085`\n- Login with username `admin` and default password `spotweb`\n- Configure usenet server, spot retention, etc. and wait for spots to appear (retrieval script by default runs once every 5 minutes, see below how to change this update interval)\n\n## Change Spotweb update interval\n\n- By default Spotweb will update every 5 minutes\n- Change the `CRON_INTERVAL` environment variable to any valid cronjob expression (see e.g. https://cron.help/ for more information, default 5 minute interval is configured in the docker-compose.yml file as an example)\n- Restart the Spotweb Docker container (during start-up it will display the current configured update interval)\n\n## Store cache outside container\n\n- By default Spotweb store cache (like images) inside of the Docker container (in `/app/cache`)\n- This results in the cache being removed when the container is recreated (e.g. when a new Docker image is pulled)\n- To retain this cache you can mount a volume to `/app/cache` see the commented lines in the included Docker Compose files on how to do this\n\n## Change timezone\n\n- Change the `TZ` environment variable to any valid timezone (e.g. Europe/Amsterdam or Europe/Lisbon)\n- Restart the Spotweb Docker container\n\n## Tip: Using `ownsettings.php`\n\nYou can override Spotweb settings by using a custom `ownsettings.php` file. In most cases there is no need to use this feature, so only use this when you know what you are doing!\n\nThe example below will mount `/external/ownsettings.php` to `/app/ownsettings.php` inside the container. Spotweb will see the ownsettings file and load it automatically.\n\n```\nvolumes:\n- /external/ownsettings.php:/app/ownsettings.php\n```\n\n## Use Spotweb as newznab provider (indexer)\n\nIf you want to use Spotweb with for example Sonarr or Radarr (or any tool that is compatible with newznab indexers), create a new (non admin) user in Spotweb and use the API key associated with this new user.\n\nNext step is to set-up a custom newznab indexer in Sonarr or Radarr and point it to the Spotweb url with the API key from the newly created user.\n\n## All environment variables\n\n- **DB_ENGINE**, one of:\n  - `pdo_mysql` (MySQL, default)\n  - `pdo_pgsql` (PostgreSQL)\n  - `pdo_sqlite` (SQLite)\n- **DB_HOST** (default = `mysql`)\n- **DB_PORT** (default = `3306`)\n- **DB_NAME** (default = `spotweb`)\n- **DB_USER** (default = `spotweb`)\n- **DB_PASS** (default = `spotweb`)\n- **TZ** (default = `Europe/Amsterdam`)\n- **CRON_INTERVAL** (default = `*/5 * * * *`)\n\n## Additional information\n\n- Spotweb is configured as an open system after running docker compose up, so everyone who can access the site can register an account (keep this in mind, and also make sure to change the admin password if you plan to expose Spotweb to the outside world!)\n- See the [official Spotweb Wiki](https://github.com/spotweb/spotweb/wiki) for any questions regarding Spotweb\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedv%2Fdocker-spotweb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedv%2Fdocker-spotweb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedv%2Fdocker-spotweb/lists"}