Skip to content

bateman/wolproxypyapi

Repository files navigation

wolproxypyapi

Workflow Documentation Status Docker Pulls Docker Image Version (latest semver) GitHub

Imports: isort Code style: black security: bandit Code Climate maintainability Known Vulnerabilities

A FastAPI RESTful web service for routing Wake-On-LAN packets via Internet.

This is a simple package for sending Wake-On-LAN packets to other hosts in a local network. However, wolproxypyapi also offers a fully-dockerized web app (built on Flask) and an API (built on FastAPI) that act as proxy for routing magic WOL packets via the Internet.

Installation

  1. git clone https://github.com/bateman/wolproxypyapi - Clone the project from GitHub.
  2. make install - Install all dependencies via poetry.
  3. 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 execute 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.

License

This project is licensed under the terms of the MIT license. See the LICENSE file for details.