{"id":20119817,"url":"https://github.com/shellshape/servus","last_synced_at":"2025-05-06T14:32:50.290Z","repository":{"id":99796478,"uuid":"563514962","full_name":"shellshape/servus","owner":"shellshape","description":"A dead simple application to serve files and directories over HTTP.","archived":false,"fork":false,"pushed_at":"2024-05-14T14:56:40.000Z","size":111,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-02T10:22:36.549Z","etag":null,"topics":["cli","docker","fileserver","http","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/shellshape.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}},"created_at":"2022-11-08T19:18:51.000Z","updated_at":"2024-10-28T13:10:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7f48735-ede0-42ac-9427-8261d0003c2c","html_url":"https://github.com/shellshape/servus","commit_stats":null,"previous_names":["shellshape/servus"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shellshape%2Fservus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shellshape%2Fservus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shellshape%2Fservus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shellshape%2Fservus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shellshape","download_url":"https://codeload.github.com/shellshape/servus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252703464,"owners_count":21790890,"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":["cli","docker","fileserver","http","rust"],"created_at":"2024-11-13T19:17:16.099Z","updated_at":"2025-05-06T14:32:49.943Z","avatar_url":"https://github.com/shellshape.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# servus\n\nA dead simple application to serve files and directories over HTTP.\n\n## Usage\n\n### Quick Local File Sharing\n\nYou can simply use the application in your terminal to serve files in your local network, for example if you want to share files from one device to another. Thats particularly useful because almost every modern device supports download via HTTP.\n\n```\n$ servus --serve ./data\n[2022-11-08T18:20:53Z INFO  servus] Bound to address 172.17.0.3:80\n[2022-11-08T18:20:53Z INFO  servus] LocalStore: ./data -\u003e /\n```\n\nLet's assume you have a file calles `big.file` in the `./data` directory. After starting servus, you can now download the file on another device by opening `http://172.17.0.3/big.file` in your browser.\n\n### Content Delivery Server\n\nYou can - of course - also set up servus as a small content delivery serivce. Therefore, you can simply use the provided Docker image.\n\n`/etc/servus/config.yml`\n```yml\naddress: \"0.0.0.0:8081\"\nstores:\n  - type: \"Local\"\n    directory: \"testdata\"\n    servepath: \"localdata\"\n    browse: true\n  - type: \"S3\"\n    servepath: \"s3data\"\n    accesskey: minioadmin\n    secretkey: minioadmin\n    bucket: test\n    endpoint: http://localhost:9000\n    browse: false\n```\n\n```\n$ docker run \\\n    --name servus \\\n    --volume /var/opt/data:/data \\\n    --volume /etc/servus/config.yml:/etc/servus/config.yml:ro \\\n    ghcr.io/zekrotja/servus:latest \\\n        --config /etc/servus/config.yml\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshellshape%2Fservus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshellshape%2Fservus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshellshape%2Fservus/lists"}