{"id":22427892,"url":"https://github.com/maurosoft1973/docker-alpine-lftp","last_synced_at":"2025-10-16T00:31:18.256Z","repository":{"id":63219560,"uuid":"553826228","full_name":"maurosoft1973/Docker-Alpine-LFTP","owner":"maurosoft1973","description":"LFTP Docker image running on Alpine Linux","archived":false,"fork":false,"pushed_at":"2025-01-29T04:14:59.000Z","size":207,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-29T05:21:06.101Z","etag":null,"topics":["alpine","alpine-docker","docker","docker-alpine","lftp"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maurosoft1973.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":"2022-10-18T20:46:22.000Z","updated_at":"2025-01-29T04:15:03.000Z","dependencies_parsed_at":"2023-10-01T04:22:27.473Z","dependency_job_id":"f237db8d-9d07-4319-9478-225c4525f561","html_url":"https://github.com/maurosoft1973/Docker-Alpine-LFTP","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/maurosoft1973%2FDocker-Alpine-LFTP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maurosoft1973%2FDocker-Alpine-LFTP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maurosoft1973%2FDocker-Alpine-LFTP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maurosoft1973%2FDocker-Alpine-LFTP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maurosoft1973","download_url":"https://codeload.github.com/maurosoft1973/Docker-Alpine-LFTP/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236658008,"owners_count":19184576,"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":["alpine","alpine-docker","docker","docker-alpine","lftp"],"created_at":"2024-12-05T20:13:09.077Z","updated_at":"2025-10-16T00:31:18.249Z","avatar_url":"https://github.com/maurosoft1973.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LFTP Docker image running on Alpine Linux\n\n[![Docker Automated build](https://img.shields.io/docker/automated/maurosoft1973/alpine-lftp.svg?style=for-the-badge\u0026logo=docker)](https://hub.docker.com/r/maurosoft1973/alpine-lftp/)\n[![Docker Pulls](https://img.shields.io/docker/pulls/maurosoft1973/alpine-lftp.svg?style=for-the-badge\u0026logo=docker)](https://hub.docker.com/r/maurosoft1973/alpine-lftp/)\n[![Docker Stars](https://img.shields.io/docker/stars/maurosoft1973/alpine-lftp.svg?style=for-the-badge\u0026logo=docker)](https://hub.docker.com/r/maurosoft1973/alpine-lftp/)\n\n[![Alpine Version](https://img.shields.io/badge/Alpine%20version-v3.21.0-green.svg?style=for-the-badge)](https://alpinelinux.org/)\n\nThe Docker images [(maurosoft1973/alpine-lftp)](https://hub.docker.com/r/maurosoft1973/alpine-lftp/) is based on the minimal [Alpine Linux](https://alpinelinux.org/)  with [LFTP Version v4.9.2-r7](https://lftp.yar.ru/).\n\n##### Alpine Version 3.21.0 (Released 2024-12-05)\n##### LFTP Version 4.9.2-r7 (Released 2024-08-15\r)\n\n## Description\n\nThe LFTP is a sophisticated file transfer program supporting a number of network protocols (ftp, http, sftp, fish, torrent). Like BASH, it has job control and uses the readline library for input. It has bookmarks, a built-in mirror command, and can transfer several files in parallel. It was designed with reliability in mind. LFTP is free software, distributed under the GNU GPL license.\nFor more information [(lftp)](https://lftp.yar.ru/features.html)\n\nLFTP includes the following features (some may be missed in this list):\n\n* FTP and HTTP protocols support.\n* FTP (e.g. TIS FWTK) proxy support.\n* HTTP proxy support.\n* FTP over HTTP proxy support (hftp and CONNECT method).\n* HTTPS and FTPS protocols support using GNU TLS or OpenSSL library.\n* Automatic OPIE/SKEY support in FTP protocol.\n* FXP transfers support (between two FTP servers, bypassing client machine).\n* FTP listings support: unix-style, NT, EPLF, OS/2, AS400, MacWebStar, MLSD.\n* FTP implicit compression (MODE Z) support.\n* Automatic reconnect and retry of an operation on retriable errors or timeout.\n* IPv6 support in both FTP and HTTP.\n* FISH protocol support. It uses ssh with no special program on server side.\n* SFTP protocol v3-v6 support.\n* HTTP/1.1 keep-alive support.\n* HTTP basic and digest authentication.\n* Partial WebDAV support.\n* BitTorrent protocol support (including IPv6).\n* BitTorrent extensions: Fast, DHT, PEX, Multi-tracker, Metadata, magnet.\n* Experimental support for SRV DNS records.\n* SOCKS support (configure option).\n* Modification time preservation (if server can report it).\n* reget and reput support.\n* Built-in mirror and reverse mirror (mirror -R).\n* Transfer rate throttling for each connection, for each host and for all connections in total.\n* Limit for number of connections to the same site. Interruption of background transfer to do a foreground operation when the limit is reached.\n* Socket options tuning: buffer size and maximum segment size.\n* Job queueing.\n* Job execution at specified time.\n* Comprehensive scripting support.\n* URL recognition in most operations.\n* Readline library is used for input.\n* Context sensitive completion.\n* Bash-like prompt extensions.\n* Launching of local shell commands.\n* Suspend support.\n* Bookmarks.\n* Aliases.\n* Saving of last directory on each site. `cd -' to go there.\n* Copying of files (including mirror) between two servers over the client, automatic usage of FXP when possible to bypass the client.\n* Numerous settings which can be associated with a specific server or a group.\n* Paging of remote files using external program.\n* zcat and zmore support.\n* Help for commands.\n* Command history saved in a file.\n* Transfer status includes rate and ETA.\n* File listing cache.\n* Background jobs (bash-like).\n* Job output redirection to a file or to a program via pipe.\n* Conditional commands depending on exit status of previous one.\n* Loading of binary modules at run time (configure option).\n* pget to download a file using several connections. `pget' download can be continued as it saves a status file periodically.\n* mirror can download several files in parallel (--parallel option) and a single file with `pget' (--use-pget-n option).\n* Slots. Each slot is a separate session, switch using Meta-{1-9} or `slot' command. Refer to a slot site using pseudo URL slot:name.\n\n## Architectures\n\n* ```:aarch64``` - 64 bit ARM\n* ```:armhf```   - 32 bit ARM v6\n* ```:armv7```   - 32 bit ARM v7\n* ```:ppc64le``` - 64 bit PowerPC\n* ```:x86```     - 32 bit Intel/AMD\n* ```:x86_64```  - 64 bit Intel/AMD (x86_64/amd64)\n\n## Tags\n\n* ```:latest```         latest branch based (Automatic Architecture Selection)\n* ```:aarch64```        latest 64 bit ARM\n* ```:armhf```          latest 32 bit ARM v6\n* ```:armv7```          latest 32 bit ARM v7\n* ```:ppc64le```        latest 64 bit PowerPC\n* ```:x86```            latest 32 bit Intel/AMD\n* ```:x86_64```         latest 64 bit Intel/AMD\n* ```:test```           test branch based (Automatic Architecture Selection)\n* ```:test-aarch64```   test 64 bit ARM\n* ```:test-armhf```     test 32 bit ARM v6\n* ```:test-armv7```     test 32 bit ARM v7\n* ```:test-ppc64le```   test 64 bit PowerPC\n* ```:test-x86```       test 32 bit Intel/AMD\n* ```:test-x86_64```    test 64 bit Intel/AMD\n* ```:3.21.0``` 3.21.0 branch based (Automatic Architecture Selection)\n* ```:3.21.0-aarch64```   3.21.0 64 bit ARM\n* ```:3.21.0-armhf```     3.21.0 32 bit ARM v6\n* ```:3.21.0-armv7```     3.21.0 32 bit ARM v7\n* ```:3.21.0-ppc64le```   3.21.0 64 bit PowerPC\n* ```:3.21.0-x86```       3.21.0 32 bit Intel/AMD\n* ```:3.21.0-x86_64```    3.21.0 64 bit Intel/AMD\n* ```:3.21.0-4.9.2-r7``` 3.21.0-4.9.2-r7 branch based (Automatic Architecture Selection)\n* ```:3.21.0-4.9.2-r7-aarch64```   3.21.0 64 bit ARM\n* ```:3.21.0-4.9.2-r7-armhf```     3.21.0 32 bit ARM v6\n* ```:3.21.0-4.9.2-r7-armv7```     3.21.0 32 bit ARM v7\n* ```:3.21.0-4.9.2-r7-ppc64le```   3.21.0 64 bit PowerPC\n* ```:3.21.0-4.9.2-r7-x86```       3.21.0 32 bit Intel/AMD\n* ```:3.21.0-4.9.2-r7-x86_64```    3.21.0 64 bit Intel/AMD\n\n## Layers \u0026 Sizes\n\n| Version                                                                               | Size                                                                                                                 |\n|---------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------|\n| ![Version](https://img.shields.io/badge/version-amd64-blue.svg?style=for-the-badge)   | ![MicroBadger Size (tag)](https://img.shields.io/docker/image-size/maurosoft1973/alpine-lftp/latest?style=for-the-badge)  |\n| ![Version](https://img.shields.io/badge/version-armv6-blue.svg?style=for-the-badge)   | ![MicroBadger Size (tag)](https://img.shields.io/docker/image-size/maurosoft1973/alpine-lftp/armhf?style=for-the-badge)   |\n| ![Version](https://img.shields.io/badge/version-armv7-blue.svg?style=for-the-badge)   | ![MicroBadger Size (tag)](https://img.shields.io/docker/image-size/maurosoft1973/alpine-lftp/armv7?style=for-the-badge)   |\n| ![Version](https://img.shields.io/badge/version-ppc64le-blue.svg?style=for-the-badge) | ![MicroBadger Size (tag)](https://img.shields.io/docker/image-size/maurosoft1973/alpine-lftp/ppc64le?style=for-the-badge) |\n| ![Version](https://img.shields.io/badge/version-x86-blue.svg?style=for-the-badge)     | ![MicroBadger Size (tag)](https://img.shields.io/docker/image-size/maurosoft1973/alpine-lftp/x86?style=for-the-badge)     |\n\n## Environment Variables:\n\n### Main LFTP parameters:\n* `LC_ALL`: default locale (en_GB.UTF-8)\n* `TIMEZONE`: default timezone (Europe/Brussels)\n* `SHELL_TERMINAL`: default shell (bin/sh)\n\n## Sample Use with gitlab pipeline\nThe script below allows you to synchronize files on a remote server, excluding hidden files and folders (-X .* -X .*/)\nThe script git_restore_last_modified_time sets the last modified date on the repository files before syncronized.\n\n```yalm\nstages:\n    - deploy\n\ndeploy-develop:\n    stage: deploy\n    image: maurosoft1973/alpine-lftp\n    variables:\n        FTP_SERVER: 'ftp server'\n        FTP_PORT: 'ftp port'\n        FTP_USERNAME: 'ftp username'\n        FTP_PASSWORD: 'ftp password'\n        FTP_LOCAL_FOLDER: 'local folder'\n        FTP_REMOTE_FOLDER: 'remote folder'\n    only:\n        - develop\n    script:\n        - git_restore_last_modified_time\n        - lftp -e \"set ssl:verify-certificate no; set ftp:use-mdtm-overloaded true; open $FTP_SERVER; user $FTP_USERNAME $FTP_PASSWORD; mirror -X .* -X .*/ --reverse --verbose --delete $FTP_LOCAL_FOLDER $FTP_REMOTE_FOLDER; bye\"\n\ndeploy-prod:\n    stage: deploy\n    image: maurosoft1973/alpine-lftp\n    variables:\n        FTP_SERVER: 'ftp server'\n        FTP_PORT: 'ftp port'\n        FTP_USERNAME: 'ftp username'\n        FTP_PASSWORD: 'ftp password'\n        FTP_LOCAL_FOLDER: 'local folder'\n        FTP_REMOTE_FOLDER: 'remote folder'\n    only:\n        - prod\n    script:\n        - git_restore_last_modified_time\n        - lftp -e \"set ssl:verify-certificate no; set sftp:auto-confirm yes; open sftp://$FTP_SERVER -p $FTP_PORT -u $FTP_USERNAME,$FTP_PASSWORD; mirror -X .* -X .*/ --reverse --verbose --delete $FTP_LOCAL_FOLDER $FTP_REMOTE_FOLDER; bye\"\n```\n\n***\n###### Last Update 15.10.2025 03:10:07\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaurosoft1973%2Fdocker-alpine-lftp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaurosoft1973%2Fdocker-alpine-lftp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaurosoft1973%2Fdocker-alpine-lftp/lists"}