This page explains how to download the CammyCam repository, create a .env file, and spin up the Docker hub.
It assumes basic familiarity with Git and Docker but keeps the steps short and friendly.
git clone https://github.com/iamfatben/camera.git
cd camera
Copy .env.example to .env and fill in the blanks.
At minimum set a secret key and name for the hub to advertise.
cp .env.example .env
# edit .env with your favorite editor
CAMMY_SECRET_KEY can be any long random string.CAMMY_NAME controls the mDNS name (defaults to a unique cammy-XXXX.local).CAMMY_TZ sets the time zone for token expiration timestamps (default America/New_York).Run the Python helper to compile the UI, generate certificates and build the Docker image.
python tools/build_docker.py
docker run -p 443:443 --env-file .env cammy-hub
Set CAMMY_PORT in .env if you want to use a different HTTPS port and adjust the -p mapping accordingly.
The Dockerfile exposes the build argument HUB_PORT (default 443).
Run docker run -p 8443:$HUB_PORT cammy-hub when using a custom build.
The entrypoint searches for certificates under certs/<CAMMY_NAME>.pem and generates them if missing.
If you create certificates manually, place them in that directory before starting the container.
Once running, the container prints the login URL (ending in /login).
After signing in you can access the API docs at /api-docs.
Image fails to build – ensure Docker is running and try docker build --no-cache -t cammy ..
Server exits immediately – check .env; mismatched CAMMY_SECRET_KEY values cause failures.
Ports already in use – Stop other services using port 8000 or change the exposed port in the docker run command.