{"id":13552337,"url":"https://github.com/drkno/cloudmount","last_synced_at":"2025-04-05T18:32:08.289Z","repository":{"id":78449674,"uuid":"264411728","full_name":"drkno/cloudmount","owner":"drkno","description":"Mount a remote drive for streaming. Uses a combination of rclone, plexdrive and cloudplow to get optimal streaming performance.","archived":false,"fork":false,"pushed_at":"2023-03-19T09:18:41.000Z","size":290,"stargazers_count":14,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-21T08:51:17.465Z","etag":null,"topics":["mount","plex","plexdrive","rclone"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/drkno.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}},"created_at":"2020-05-16T10:23:04.000Z","updated_at":"2025-02-09T15:54:21.000Z","dependencies_parsed_at":"2023-04-21T12:17:16.820Z","dependency_job_id":null,"html_url":"https://github.com/drkno/cloudmount","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/drkno%2Fcloudmount","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drkno%2Fcloudmount/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drkno%2Fcloudmount/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drkno%2Fcloudmount/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drkno","download_url":"https://codeload.github.com/drkno/cloudmount/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247384040,"owners_count":20930399,"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":["mount","plex","plexdrive","rclone"],"created_at":"2024-08-01T12:02:02.404Z","updated_at":"2025-04-05T18:32:06.372Z","avatar_url":"https://github.com/drkno.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# CloudMount\r\n\r\nMount a remote drive for streaming. Uses of `rclone` with overlay and caching to get optimal streaming performance.\r\n\r\n# Setup\r\n\r\n### Create rclone configuration\r\n\r\nRun `docker run -it --rm -v ./config:/config drkno/cloudmount:latest rclone_setup` to [setup rclone](https://rclone.org/docs/), where `./config` reflects where you want configuration files to live.\r\n\r\n## Configuration Options\r\n\r\nConfiguration lives in `/config/cloudplow.json`, a default `cloudplow.json` will be created start if none is present.\r\n\r\n\r\n| Configuration Option                     | Default Value  | Description                    |\r\n|------------------------------------------|----------------|--------------------------------|\r\n| PGID                                     | _empty_        | User GID to run as.            |\r\n| PUID                                     | _empty_        | User UID to run as.            |\r\n| PLEX_URL                                 | _empty_        | The PMS to empty the trash of. |\r\n| PLEX_TOKEN                               | _empty_        | The user token for the PMS.    |\r\n| BUFFER_SIZE                              | `500M`         | Buffer size to use when uploading / moving files |\r\n| MAX_READ_AHEAD                           | `30G`          | The maximum number of bytes that can be prefetched for sequential reads. |\r\n| CHECKERS                                 | `16`           | Number of checkers to run in parallel when moving/uploading. |\r\n| RCLONE_ENDPOINT                    | `gd-crypt:`    | Raw cloud endpoint for the remote drive. |\r\n| MAX_CACHE_FILES | `100`          | Max size of the offline file cache in GB. |\r\n| RMDELETETIME                             | `0 6 * * *`    | Cron expression defining when to delete local copies of files. `0 0 31 2 0` disables local deletions. |\r\n\r\n## Usage\r\n\r\n### CLI\r\n\r\n```bash\r\ndocker run \\\r\n    --name cloudmount \\\r\n    -v ./config:/config:shared \\\r\n    -p 5572:5572/tcp \\\r\n    --privileged \\\r\n    --cap-add=MKNOD \\\r\n    --cap-add=SYS_ADMIN \\\r\n    --device=/dev/fuse \\\r\n    drkno/cloudmount:latest\r\n```\r\n\r\n### Docker Compose\r\n\r\n```yaml\r\nversion: '3.4'\r\nservices:\r\n    cloudmount:\r\n        container_name: cloudmount\r\n        image: drkno/cloudmount:latest\r\n        restart: unless-stopped\r\n        privileged: true\r\n        cap_add:\r\n            - MKNOD\r\n            - SYS_ADMIN\r\n        environment:\r\n            - TZ=Australia/Sydney\r\n        volumes:\r\n            - /etc/localtime:/etc/localtime:ro\r\n            - ./config:/config:shared\r\n        devices:\r\n            - /dev/fuse\r\n        ports:\r\n            - 5572:5572/tcp\r\n```\r\n\r\n### Rclone RCD GUI\r\n\r\nBy default this container starts the [rclone rcd GUI](https://rclone.org/gui/) on port 5572 *with no authentication*.\r\nIt is expected that this GUI will either not be exposed or [run behind an SSO](https://github.com/drkno/PlexSSOv2).\r\n\r\n## Building\r\n\r\n```bash\r\ndocker build -t drkno/cloudmount:latest .\r\n```\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrkno%2Fcloudmount","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrkno%2Fcloudmount","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrkno%2Fcloudmount/lists"}