wolproxypyapi
This is a simple package for sending Wake-On-LAN packets to other host in a local network. This started as a pet-project to put together and test a series of technologies I'm interested in. The all WOL packet sending is managed by the Python package wakeonlan, for which wolproxypy act as a wrapper.
However, wolproxypy also offers a fully-dockerozed web app (built on Flask) and an API (built on FastAPI) that act as proxy for routing magic WOL packets via Internet.
Installation
git clone https://github.com/bateman/wolproxypyapi
- Clone the project from GitHub.make install
- Install all dependencies via poetry.make docs
- Build the documentation site via mkdocs.
Usage
To launch the web application, run poetry run wolproxypyapi
and connect to http://127.0.0.0:8000. You can change the port by editing the file config/api.config
.
Docker
Assuming that you have Docker installed on your system and that you have cloned the GitHub repository locally as per the Installation step 1 above, to build and executed the image locally, run:
docker-compose up -d --build
The app will be available at http://127.0.0.0:8000. To change the port, edit the file docker-compose.yml
accordingly and rebuild the image.
You can stop it by executing docker-compose stop
.
Alternatively, if you don't want to clone the repository, just download the latest image from DockerHub, run:
docker pull bateman/wolproxypyapi:latest
docker start bateman/wolproxypyapi
The app will be again accessible at http://127.0.0.0:8000.