[support] dlandon - Zoneminder 1.36


Recommended Posts

  • 3 weeks later...
On 4/16/2017 at 4:11 AM, dlandon said:

The hook files require additional python modules.  The Docker will load the hook modules and run 'setup.py' if you set an environment variable INSTALL_HOOK="1".

Currently I install the hook dependencies using the ADVANCED_SCRIPT/userscript.sh option like so:

 

apt-get -y install python-pip
pip install opencv-python
apt-get -y install libsm6 libxext6 libxrender1
sudo pip install -r  /var/detect/requirements.txt
sudo pip install cmake
sudo -H pip install face_recognition

Should I switch to the INSTALL_HOOK option instead?

Link to comment
42 minutes ago, PTRFRLL said:

Currently I install the hook dependencies using the ADVANCED_SCRIPT/userscript.sh option like so:

 


apt-get -y install python-pip
pip install opencv-python
apt-get -y install libsm6 libxext6 libxrender1
sudo pip install -r  /var/detect/requirements.txt
sudo pip install cmake
sudo -H pip install face_recognition

Should I switch to the INSTALL_HOOK option instead?

Yes.  It should accomplish this for you.  Let me know if there are any adjustments required.

Link to comment
21 minutes ago, dlandon said:

Yes.  It should accomplish this for you.  Let me know if there are any adjustments required.

Looks good so far. I have run into an issue where the new detect.py script requires some helper files located in hook/zme_hook_helpers that are omitted from your copy command to /usr/bin. If I manually copy that directory, it seems to work. 

Link to comment
2 hours ago, PTRFRLL said:

Looks good so far. I have run into an issue where the new detect.py script requires some helper files located in hook/zme_hook_helpers that are omitted from your copy command to /usr/bin. If I manually copy that directory, it seems to work. 

So I need to crate a /config/hook/zme_hook_helpers/ folder and copy those contents to /usr/bin/?  Do I copy the files or the entire folder.

 

i.e.  copy /config/hook/zme_hook_helpers/ /usr/bin/zme_hook_helpers/

 

Edit:  Looks like it is zmes_hook_helpers.  Give me the copy command you used to copy the files.

Edited by dlandon
Link to comment
6 minutes ago, dlandon said:

So I need to crate a /config/hook/zme_hook_helpers/ folder and copy those contents to /usr/bin/?  Do I copy the files or the entire folder.

 

i.e.  copy /config/hook/zme_hook_helpers/ /usr/bin/zme_hook_helpers/

the zme_hook_helpers directory is provided by zmeventnotification so instead of creating it, maybe just check if it exists and if so, copy the entire dir so we're left with /usr/bin/zme_hook_helpers/

Link to comment
8 minutes ago, PTRFRLL said:

the zme_hook_helpers directory is provided by zmeventnotification so instead of creating it, maybe just check if it exists and if so, copy the entire dir so we're left with /usr/bin/zme_hook_helpers/

I may have spoke too soon. Looks like this is handled by the setup.py script (no copying needed). I'm starting fresh to be sure and will report back. 

Link to comment
6 minutes ago, dlandon said:

Let me know.

Figured it out. setup.py installs the zmes_hook_helpers directory. Currently the dockerfile only copies the setup.py:

COPY zmeventnotification/setup.py /root/

When the setup.py script is run later, it errors out because it's missing the zmes_hook_helpers directory, here's the relevant log:

File "/root/setup.py", line 25, in find_version
IOError: [Errno 2] No such file or directory: '/root/zmes_hook_helpers/__init__.py'

Looks like you'll need to add the zmes_hook_helpers dir and copy it so that setup.py can complete successfully.

Edited by PTRFRLL
Add link to helper files
Link to comment
3 hours ago, PTRFRLL said:

Figured it out. setup.py installs the zmes_hook_helpers directory. Currently the dockerfile only copies the setup.py:


COPY zmeventnotification/setup.py /root/

When the setup.py script is run later, it errors out because it's missing the zmes_hook_helpers directory, here's the relevant log:


File "/root/setup.py", line 25, in find_version
IOError: [Errno 2] No such file or directory: '/root/zmes_hook_helpers/__init__.py'

Looks like you'll need to add the zmes_hook_helpers dir and copy it so that setup.py can complete successfully.

I figured out there was something missing.  I'm working on an update to correct this.  Once I get it ready, please check it out and let me know if there are any other changes.

 

You'll have to add the helper files to the /config/hook/ folder.  Update the docker without the INSTALL_HOOK variable, then copy the helper files to for /hook/zmes_hook_helper/ folder, then restart the docker with INSTALL_HOOK="1".  Should be up and running at that point.

 

Edit: The zmes_hook_helpers files are included in the docker now.

Edited by dlandon
Link to comment
19 hours ago, dlandon said:

I just updated the docker to include the zmes_hook_helpers files.  Please update and let me know if there are any other adjustments I need to make.

Looking good so far. I added the INSTALL_FACE variable to the docker and everything seemed to pull down properly. I still haven't gotten face recognition to work properly but I don't think that's a problem with the docker. 

 

I appreciate you adding these even though you don't use them yourself, it saves me a lot of scripting. Thanks again!

Link to comment
1 hour ago, PTRFRLL said:

Looking good so far. I added the INSTALL_FACE variable to the docker and everything seemed to pull down properly.

I did the face recognition separately because it seems to load a lot into the docker and for those not using it can save some docker space.  This sucker is getting a bit bloated.

 

Just a heads up.  If you set the INSTALL_HOOK to "1" and run the docker, and then set the INSTALL_FACE to "1" and restart the docker, the face recognition won't load.  It's best to set both to "1" and then run the docker the first time.  You can reset this by forcing a re-load of the docker with both set and it will load everything.

  • Upvote 1
Link to comment
On 4/26/2019 at 10:25 PM, PTRFRLL said:

I appreciate you adding these even though you don't use them yourself, it saves me a lot of scripting. Thanks again!

I want to echo this statement!

 

I'm the guy who created a pull request to get my mqtt auth working with this docker and I really appreciate your work on this. I will be checking out the ML stuff soon.

Link to comment
  • 2 weeks later...

Curious to know how folks are finding their cameras.

 

I'm using a Deecam D200 which has onvif and rstp support and the onvif network scan function is not finding my camera (although my browser and smartphone can). 

 

 

Link to comment
7 hours ago, eds said:

Curious to know how folks are finding their cameras.

 

I'm using a Deecam D200 which has onvif and rstp support and the onvif network scan function is not finding my camera (although my browser and smartphone can). 

 

 

Change 'Network Type' to 'Host' and see if that helps.

Link to comment
4 hours ago, dlandon said:

Change 'Network Type' to 'Host' and see if that helps.

Unfortunately it doesn't.  Seems even with the port set to 8443, Zoneminder wants to run on 443 in host mode, but that port is being take up by nextcloud. 

Link to comment
7 hours ago, eds said:

Unfortunately it doesn't.  Seems even with the port set to 8443, Zoneminder wants to run on 443 in host mode, but that port is being take up by nextcloud. 

Then give Zoneminder a static IP address.  You won't have the 443 conflict and all ports will be open.

Link to comment
2 hours ago, dlandon said:

Then give Zoneminder a static IP address.  You won't have the 443 conflict and all ports will be open.

Not sure what you mean by the docker not having the 443 conflict.  I tried this. 

Zoneminder looks for port 443 (even when the config clearly maps to 8443) when on everything except bridge mode. 

Is that not to be expected?

Link to comment
1 hour ago, eds said:

Not sure what you mean by the docker not having the 443 conflict.  I tried this. 

Zoneminder looks for port 443 (even when the config clearly maps to 8443) when on everything except bridge mode. 

Is that not to be expected?

When it has its own IP address, the 443 port will not conflict with other dockers because they are on a different IP address.

 

Yes it is expected that port 443 is used.

Link to comment
2 hours ago, dlandon said:

When it has its own IP address, the 443 port will not conflict with other dockers because they are on a different IP address.

 

Yes it is expected that port 443 is used.

Brilliant.   That did it.   It was hit or miss for a while but finally I got it up and running and my camera is visible. 

Many thanks. 

 

Link to comment
  • dlandon changed the title to [support] dlandon - Zoneminder 1.36

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.