Frank Collins
Explorer
- Joined
- Apr 10, 2019
- Messages
- 53
Update: On 11 April 2020, the official plugin was updated to the latest version, 1.34.9, so use it instead.
In another thread, essentially and correctly, bemoaning how out of date the official plugin is, @turtlepants very kindly posted code which solves this problem and you get a recent version of ZM with minimal effort. Applause to @turtlepants. My gratitude also to @cherup for his assistance.
Instructions from that thread, along with some of my comments, are below.
I will be updating this post as improvements or changes are suggested in the tread. Also, if there are any errors, please advise and I will correct them.
1. Log into the shell of FreeNAS
2. Create a pkgs.json file (I used vi for this but you can use a different editor)
Comment: I used the built-in editor ee and it works well for me. In this case, it is:
3. Copy the following to it & save it.
Copy this exactly to pkgs.json.
4. Run the following commands.
Note: I named my jail zoneminder-jail but you can change to to something else. Just make sure they are all the same below & the jail name you pick is not used yet.
Comment: Being a newbie, I tried to run it as a block. I found out that doesn't work, so run each line separately at the root of the shell, root@FreeNAS #
After the last line, if you get the following output, the install should have been successful.;
The Database User, and Database Password are stored in ~/ folder as dbuser and dbpassword. These are needed if you ever need to access the MYSQL database for some reason.
The official plugins have a "Manage" command in the jail to open another browser tab to manage it. Just open another tab and type in the IP address and the Zone Minder GUI will display. Have fun.
In another thread, essentially and correctly, bemoaning how out of date the official plugin is, @turtlepants very kindly posted code which solves this problem and you get a recent version of ZM with minimal effort. Applause to @turtlepants. My gratitude also to @cherup for his assistance.
Instructions from that thread, along with some of my comments, are below.
I will be updating this post as improvements or changes are suggested in the tread. Also, if there are any errors, please advise and I will correct them.
1. Log into the shell of FreeNAS
2. Create a pkgs.json file (I used vi for this but you can use a different editor)
Code:
vi pkgs.json[
Comment: I used the built-in editor ee and it works well for me. In this case, it is:
Code:
ee pkgs.json
3. Copy the following to it & save it.
Code:
{ "pkgs": [ "mysql57-server", "mysql57-client", "fcgiwrap", "nginx", "zoneminder", "git" ] }
Copy this exactly to pkgs.json.
4. Run the following commands.
Note: I named my jail zoneminder-jail but you can change to to something else. Just make sure they are all the same below & the jail name you pick is not used yet.
Code:
iocage fetch -r 11.3-RELEASE iocage create -r 11.3-RELEASE -p ./pkgs.json -n zoneminder-jail dhcp=on boot=on iocage exec zoneminder-jail git clone https://github.com/freenas/iocage-plugin-zoneminder.git iocage exec zoneminder-jail cp -R iocage-plugin-zoneminder/overlay/ / iocage exec zoneminder-jail iocage-plugin-zoneminder/post_install.sh
Comment: Being a newbie, I tried to run it as a block. I found out that doesn't work, so run each line separately at the root of the shell, root@FreeNAS #
After the last line, if you get the following output, the install should have been successful.;
nginx_enable: -> YES
mysql_enable: -> YES
fcgiwrap_enable: -> YES
fcgiwrap_user: -> www
fcgiwrap_socket_owner: -> www
fcgiwrap_flags: -> -c 4
php_fpm_enable: -> YES
zoneminder_enable: -> YES
Performing sanity check on nginx configuration:
Starting nginx.
Performing sanity check on php-fpm configuration:
Starting php_fpm.
Starting fcgiwrap.
Starting mysql.
Database User: dbadmin
Database Password: [randomly generated password]
SQL Temp Password: [randomly generated password]
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
Stopping mysql.
Waiting for PIDS: 64245.
Starting mysql.
Stopping fcgiwrap.
Waiting for PIDS: 52334.
Starting fcgiwrap.
Performing sanity check on php-fpm configuration:
Stopping php_fpm.
Waiting for PIDS: 52249.
Performing sanity check on php-fpm configuration:
Starting php_fpm.
Performing sanity check on nginx configuration:
Stopping nginx.
Waiting for PIDS: 52179.
Performing sanity check on nginx configuration:
Starting nginx.
The Database User, and Database Password are stored in ~/ folder as dbuser and dbpassword. These are needed if you ever need to access the MYSQL database for some reason.
The official plugins have a "Manage" command in the jail to open another browser tab to manage it. Just open another tab and type in the IP address and the Zone Minder GUI will display. Have fun.
Last edited: