- Shell 73%
- Dockerfile 27%
|
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | alpine | final | minor | `3.22.0` → `3.23.3` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4wLjUiLCJ1cGRhdGVkSW5WZXIiOiI0My4wLjUiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=--> Reviewed-on: #3 Co-authored-by: Renovate Bot <renovate-bot@noreply.git.hackmi.ch> Co-committed-by: Renovate Bot <renovate-bot@noreply.git.hackmi.ch> |
||
|---|---|---|
| .gitignore | ||
| .woodpecker.yml | ||
| CHANGELOG.md | ||
| Dockerfile | ||
| init.sh | ||
| LICENSE | ||
| README.md | ||
| renovate.json | ||
| start.sh | ||
docker-tftp
Simple & slim TFTP server using dnsmasq, containerized for easy deployment and management.
Overview
This project provides a lightweight, containerized TFTP (Trivial File Transfer Protocol) server using dnsmasq as the backend. It's designed for simplicity, security, and ease of deployment in various environments.
Features
- Containerized Deployment: Easy deployment using Docker with minimal dependencies
- Security Focused: Runs with minimal privileges and includes security features like tftp-secure
- Cross-Platform: Works on any system that supports Docker
- Easy Configuration: Simple environment variables for customization
- Health Monitoring: Built-in healthcheck for container orchestration systems
Quick Start
Prerequisites
- Docker or compatible container runtime
- Basic understanding of TFTP protocol
Quick Deployment
- Run the container:
docker run -d \
--name tftp-server \
-p 69:69/udp \
-v /path/to/your/tftp-folder:/tftp \
git.hackmi.ch/phil/docker-tftp:latest
Configuration
Environment Variables
The following environment variables can be set to customize the container:
PUID(default: 1000): User ID for the tftp processPGID(default: 1000): Group ID for the tftp processTFTP_ROOT: Root directory for TFTP operations (default: /tftp)
Volume Mounting
For persistent storage and file sharing, mount your desired directory to /tftp in the container.
Advanced Usage
Custom Configuration
You can customize the dnsmasq configuration by creating a custom config file and mounting it to /etc/dnsmasq.conf in the container.
Health Checking
The container includes a healthcheck that verifies the TFTP service is responsive on port 69.
Integration Tests
The project includes test scripts to validate functionality in CI/CD pipelines.
Building from Source
- Clone the repository:
git clone https://git.hackmi.ch/phil/docker-tftp.git - Build the image:
docker build -t docker-tftp . - Test locally: Use the quick start instructions above
License
This project is licensed under the MIT License. See the LICENSE file for details.