Installing Zoneminder is not straightforward at all. You need to set up all the dependencies and configure them: e.g., PHP, Apache, MySQL.

A easier way is to use the ZM docker image.

However FreeBSD doesn't support Docker. So I installed a Ubuntu Server guest on my FreeBSD, and install docker on the Ubuntu Server instead. I followed this guide to install Docker on Ubuntu. Basically just setup Docker's repository for apt. Then simply apt install docker-ce.

Once docker is ready, use follow commands to install and start the ZM service. Note that first time it takes a while to start up. You can check the log with docker container log Zoneminder.

Once ZM starts up, point your browser to http://ip:8080/zm you should see ZM the landing page.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
docker pull dlandon/zoneminder

sudo docker run -d --name="Zoneminder" \
--restart=always \
--net="bridge" \
--privileged="true" \
-p 8080:80/tcp \
-p 9000:9000/tcp \
-e TZ="America/Los_Angeles" \
-e SHMEM="50%" \
-e PUID="99" \
-e PGID="100" \
-e INSTALL_HOOK="0" \
-e INSTALL_FACE="0" \
-e INSTALL_TINY_YOLO="0" \
-e INSTALL_YOLO="0" \
-e MULTI_PORT_START="0" \
-e MULTI_PORT_END="0" \
-v "/mnt/Zoneminder":"/config":rw \
-v "/mnt/Zoneminder/data":"/var/cache/zoneminder":rw \
dlandon/zoneminder