Docker Install
Box IO runs from the prebuilt image someone275/box_io-docker-server on Docker Hub. Pick the page for the server you have. Each page lists the Docker install, the firewall ports, the JWT secret, and how to start the containers.
UbuntuUbuntu 24.04. Docker Engine, ufw, and nginx on ports 80 and 443. The Arduino hub listens on 5923.
CentOSCentOS Stream 9 or 10. Docker Engine, firewalld, and the same compose file as Ubuntu.
Red HatRed Hat Enterprise Linux 8, 9, or 10. Leave SELinux enforcing. The compose file matches Ubuntu.
Raspberry PiRaspberry Pi 4 or 5 with 64-bit Raspberry Pi OS. The Pi builds the image. nginx listens on 80 and 443. The Arduino hub listens on 5923.
BlueOnyx 5212RAlmaLinux 10 with Apache already on ports 80 and 443. A separate compose file keeps those ports with the panel.
What every install shares
- Download the folder with
git clone https://github.com/Someone275/Box_IO-Docker-server.gitin the home directory. That creates~/Box_IO-Docker-server. On BlueOnyx, run it from/root. The page for your system then downloads the current compose file from this website. - Copy
.env.exampleto.envand setJWT_SECRETto the output ofopenssl rand -hex 48. Do not commit.env. - On Ubuntu, CentOS, and Red Hat, pull the image with
docker compose pull, then start it withdocker compose up -d --no-build. On a Raspberry Pi, rundocker compose buildand thendocker compose up -d. On BlueOnyx, add-f docker-compose.blueonyx.ymlto the pull and up commands. - Arduino and ESP32 boards use HTTP port
5923. - Open the dashboard, create the admin account, then install a trial or a paid license before pin values will show.
Ubuntu, CentOS, Red Hat, and Raspberry Pi start an nginx container on ports 80 and 443. BlueOnyx already uses those ports, so that install proxies the dashboard through Apache and does not start nginx.