{"id":19458030,"url":"https://github.com/garethflowers/docker-ftp-server","last_synced_at":"2025-04-12T18:48:48.896Z","repository":{"id":39878719,"uuid":"278679778","full_name":"garethflowers/docker-ftp-server","owner":"garethflowers","description":"A simple FTP server, using `vsftpd`.","archived":false,"fork":false,"pushed_at":"2025-02-26T19:03:10.000Z","size":94,"stargazers_count":214,"open_issues_count":10,"forks_count":64,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-03T23:09:09.744Z","etag":null,"topics":["docker","ftp","ftp-server"],"latest_commit_sha":null,"homepage":"https://garethflowers.dev/docker-ftp-server/","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/garethflowers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"custom":"https://paypal.me/garethflowers"}},"created_at":"2020-07-10T16:17:24.000Z","updated_at":"2025-03-27T16:21:22.000Z","dependencies_parsed_at":"2024-06-18T07:46:46.244Z","dependency_job_id":"c1a40e42-a9df-4563-aa82-0084d16a5b58","html_url":"https://github.com/garethflowers/docker-ftp-server","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garethflowers%2Fdocker-ftp-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garethflowers%2Fdocker-ftp-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garethflowers%2Fdocker-ftp-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/garethflowers%2Fdocker-ftp-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/garethflowers","download_url":"https://codeload.github.com/garethflowers/docker-ftp-server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248618214,"owners_count":21134199,"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":["docker","ftp","ftp-server"],"created_at":"2024-11-10T17:25:07.353Z","updated_at":"2025-04-12T18:48:48.872Z","avatar_url":"https://github.com/garethflowers.png","language":"Shell","funding_links":["https://paypal.me/garethflowers"],"categories":["Shell"],"sub_categories":[],"readme":"# FTP Server\n\nA simple FTP server, using\n[`vsftpd`](https://security.appspot.com/vsftpd.html).\n\n## How to use this image\n\n### Start a FTP Server instance\n\nTo start a container, with data stored in `/data` on the host, use the\nfollowing:\n\n#### ... via `docker run`\n\n```sh\ndocker run \\\n\t--detach \\\n\t--env FTP_PASS=123 \\\n\t--env FTP_USER=user \\\n\t--env PUBLIC_IP=192.168.0.1 \\\n\t--name my-ftp-server \\\n\t--publish 20-21:20-21/tcp \\\n\t--publish 40000-40009:40000-40009/tcp \\\n\t--volume /data:/home/user \\\n\tgarethflowers/ftp-server\n```\n\n#### ... via `docker compose`\n\n```yml\nservices:\n    ftp-server:\n        container_name: my-ftp-server\n        environment:\n            - PUBLIC_IP=192.168.0.1\n            - FTP_PASS=123\n            - FTP_USER=user\n        image: garethflowers/ftp-server\n        ports:\n            - \"20-21:20-21/tcp\"\n            - \"40000-40009:40000-40009/tcp\" # For passive mode\n        volumes:\n            - \"/data:/home/user\"\n```\n\n## Configuration\n\n### Ports\n\n| Port           | Required? | Description                                                     | Config                                                                                                                                         |\n| -------------- | --------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |\n| 21             | Required  | The default port that FTP listens on.                           | [listen_port](https://security.appspot.com/vsftpd/vsftpd_conf.html)                                                                            |\n| 20             | Required  | The default port for PORT connections to originate.             | [ftp_data_port](https://security.appspot.com/vsftpd/vsftpd_conf.html)                                                                          |\n| 40000\u003cbr\u003e40009 | Optional  | The min and max ports to use for PASV connections to originate. | [pasv_min_port](https://security.appspot.com/vsftpd/vsftpd_conf.html)\u003cbr\u003e[pasv_max_port](https://security.appspot.com/vsftpd/vsftpd_conf.html) |\n\n### Environment Variables\n\n| Variable    | Default Value | Description                                       |\n| ----------- | ------------- | ------------------------------------------------- |\n| `FTP_PASS`  | `bar`         | The FTP password                                  |\n| `FTP_USER`  | `foo`         | The FTP username                                  |\n| `UID`       | `1000`        | User ID for the `$FTP_USER` user                  |\n| `GID`       | `1000`        | Group ID for the `$FTP_USER` user                 |\n| `PUBLIC_IP` | `0.0.0.0`     | Public IP address to use for Passive connections. |\n\n## License\n\n-   This image is released under the\n    [MIT License](https://raw.githubusercontent.com/garethflowers/docker-ftp-server/master/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarethflowers%2Fdocker-ftp-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgarethflowers%2Fdocker-ftp-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgarethflowers%2Fdocker-ftp-server/lists"}