AlbrechtL / openwrt-docker

OpenWrt docker container for x86_64, arm64 and Weidmueller u-OS.
MIT License
8 stars 2 forks source link

OpenWrt qemu docker container for x86_64, arm64 and Weidmueller u-OS

Build Tests

OpenWrt in a docker container utilizing qemu. Tested on Raspberry Pi 5 and Weidmueller UC20-M4000 PLC but should work on any x86_64 and ARM64 (aarch64) based hardware. It uses high-performance QEMU options (like KVM acceleration, kernel-mode networking, IO threading, etc.) to achieve near-native speed. 4 and

Features

Pre-installed OpenWrt software packages

Because OpenWrt doesn't provide a user installed package update mechanism all required packages needs to be included into the OpenWrt rootfs image. This Docker images adds the following software to the OpenWrt rootfs:

Supported USB devices

Usage

See docker-compose.yml

Build and run

docker compose up

If you like to specify a specific OpenWrt version you can do

docker build -t openwrt-docker . --build-arg OPENWRT_VERSION="23.05.4" && docker compose up

or for the latest development master. The --no-cache option is necessary to get always the newest version.

docker build --no-cache -t openwrt-docker . --build-arg OPENWRT_VERSION="master" && docker compose up

Screenshots

VNC console in web browser VNC console in web browser

OpenWrt LUCI web interface OpenWrt LUCI web interface

Acknowledgement

I would like to thanks to following Open Source projects. Without these great work this container would not be possbile

Disclaimer: Security Notice

This software container is a proof of concept and has not undergone comprehensive cybersecurity assessments. Users are cautioned that potential vulnerabilities may exist, posing risks to system security and data integrity. By deploying or using this container, users accept the associated risks, and the developers disclaim any responsibility for security incidents or data breaches. A thorough security evaluation, including penetration testing and compliance checks, is strongly advised before production deployment. The software is provided without warranty, and users are encouraged to provide feedback for collaborative efforts in addressing security concerns. Users acknowledge reading and understanding this disclaimer, assuming responsibility for ensuring their environment's security.