coppit Posted April 17, 2017 Share Posted April 17, 2017 Xeoma is surveillance software. It has low CPU usage (about 3% CPU when idle) and an easy-to-use user interface. I tried ZoneMinder, which was very clunky to use, and had very high CPU usage. For about a year I ran Blue Iris in a Windows VM, but after SageTV and AirVideo HD were running in containers, Blue Iris was the only thing left in the VM. Blue Iris was routinely using 30-40% of a CPU, so I was happy that Xeoma had a docker-izable Linux server. The container will be available in community applications shortly. After configuring and launching the container, download the software from their website for your computer. The Mac and Windows versions are identical, but the iOS app doesn't let you configure things. You can try Xeoma for free using the trial version, but it will be somewhat crippled. Note that the free version won't work, since it can't connect to the server. For more information on usage, including how to connect your cameras: https://hub.docker.com/r/coppit/xeoma/ For source code: https://github.com/coppit/docker-xeoma 1 Quote Link to comment
bokchoy Posted April 18, 2017 Share Posted April 18, 2017 On 4/16/2017 at 10:00 PM, coppit said: Xeoma is surveillance software. It has low CPU usage (about 3% CPU when idle) and an easy-to-use user interface. I tried ZoneMinder, which was very clunky to use, and had very high CPU usage. For about a year I ran Blue Iris in a Windows VM, but after SageTV and AirVideo HD were running in containers, Blue Iris was the only thing left in the VM. Blue Iris was routinely using 30-40% of a CPU, so I was happy that Xeoma had a docker-izable Linux server. The container will be available in community applications shortly. After configuring and launching the container, download the software from their website for your computer. The Mac and Windows versions are identical, but the iOS app doesn't let you configure things. You can try Xeoma for free using the trial version, but it will be somewhat crippled. Note that the free version won't work, since it can't connect to the server. For more information on usage, including how to connect your cameras: https://hub.docker.com/r/coppit/xeoma/ For source code: https://github.com/coppit/docker-xeoma Hey thanks for building a docker image for Xeoma! I'm not able to connect to the server. I've tried both bridge/host and have used 16.12.26 x64 MacOS client, 17.3.30 x64 x64 MacOS client, as well as x64 trial Standard. I found I don't get an error saying the config file already exists by deleting the config directory each time and have the docker container recreate it and reset the config vars. I made sure to correlate the beta parameter configuration var with the beta/release packages downloaded. When Xeoma starts I try to connect to the server setting the ip, port, and password, but it never seems to find the server. Any thoughts? I've attached the most recent log. Thanks. xeoma-log.txt Quote Link to comment
coppit Posted April 19, 2017 Author Share Posted April 19, 2017 On 4/18/2017 at 10:34 AM, bokchoy said: I found I don't get an error saying the config file already exists by deleting the config directory each time and have the docker container recreate it and reset the config vars. I'm confused by this. When you run it the first time, it creates the config file and exits. You then need to edit the config file to set the password. Then restart the container. Are you saying that doing this results in an error? Can you share that message? When you use bridge networking, use the IP address of your server to connect. Also be sure that you're passing the port 8090 through. Attached is what my setup looks like in the Docker panel. So in my case, I connect to 192.168.1.100, port 8090. P.S. congrats on being the first to try this! Quote Link to comment
bokchoy Posted April 19, 2017 Share Posted April 19, 2017 Quote I'm confused by this. When you run it the first time, it creates the config file and exits. You then need to edit the config file to set the password. Then restart the container. Are you saying that doing this results in an error? Can you share that message? Sorry for the confusion. I followed the instructions and it works fine on the first run (run 1st time, config file created, edit vars, restart, container runs, password set successfully message logged), however, I've received an error message if I restart the container after it has been set up. That error message which unfortunately I haven't captured stated the error was due to the config file existing and then the container stops execution. In additional installation attempts deleting container, deleting config directory, and then running the container for essentially the first time works fine which makes sense since the config directory is empty. Quote When you use bridge networking, use the IP address of your server to connect. Also be sure that you're passing the port 8090 through. Attached is what my setup looks like in the Docker panel. So in my case, I connect to 192.168.1.100, port 8090. P.S. congrats on being the first to try this! Yes, my configuration is very similar 8090/tcp <-> 192.168.0.160:8090 /archive <-> /mnt/user/Surveillance/archive /config <-> /mnt/cache/appdata/Xeoma In the Xeoma client I then click the menu -> Connect to -> Remote server (? Not at home so don't know the exact verbiage), then I enter 192.168.0.160 for server, 8090 for port, and in the password field I enter the password that I used in the env vars. After a short period (15-20 sec maybe?) red text appears above the fields with text that essentially states it can't find it - since I'm not at home I'm not sure exactly what the message is, but that's related to the client, not the server. Quote Link to comment
bokchoy Posted April 19, 2017 Share Posted April 19, 2017 @coppit I want to test Xeoma before purchasing an 8-camera standard license for about $100, but I reread your instructions many times over and it was still unclear how the registration gets created in the docker container. You mentioned the registration will exist in the config directory and deleting it will probably require you to contact felonasoft, however, I'm not sure if you register the product from the client or if this registration process has to occur once you've connected to the server from the client. Thanks for the help! Quote Link to comment
ashman70 Posted April 19, 2017 Share Posted April 19, 2017 How do you edit the config file? Quote Link to comment
bokchoy Posted April 19, 2017 Share Posted April 19, 2017 2 minutes ago, ashman70 said: How do you edit the config file? 1 way is to ssh to your server and cd to the mapped volume for the config location you set when you added the Xeoma docker. Then depending on what text editor you use you can edit the xeoma.conf file in the config directory. Quote Link to comment
coppit Posted April 19, 2017 Author Share Posted April 19, 2017 You can also mount your cache drive, or wherever you put the config dir. Quote Link to comment
wgstarks Posted April 19, 2017 Share Posted April 19, 2017 (edited) 1 hour ago, ashman70 said: How do you edit the config file? Another very easy method is to use the CA Config Editor available in CA. It will allow you to view/edit any file on your server. Edited April 19, 2017 by wgstarks Quote Link to comment
bokchoy Posted April 20, 2017 Share Posted April 20, 2017 On 4/19/2017 at 2:46 PM, coppit said: I'm confused by this. When you run it the first time, it creates the config file and exits. You then need to edit the config file to set the password. Then restart the container. Are you saying that doing this results in an error? Can you share that message? Here is the log when restarting the container *** Killing all processes... *** Running /etc/my_init.d/00_regen_ssh_host_keys.sh... *** Running /etc/my_init.d/50_configure_xeoma.sh... ln: failed to create symbolic link '/usr/local/Xeoma/config': File exists *** /etc/my_init.d/50_configure_xeoma.sh failed with status 1 Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 1 hour ago, bokchoy said: ln: failed to create symbolic link '/usr/local/Xeoma/config': File exists I thought I fixed that. Can you make sure you're running the latest version? If you go to the docker page, there might be an "update" option next to the container. If not, click on the advanced view in the upper right, then do force update on the container. Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 Great job! That fixed it. The container restarts without error. The original problem is still an issue though. The client cannot find the server. Make sure that server part of Xeoma is working on PC with IP address 192.168.20.160:8090 Ignore the different subnet. Just got a new switch and set up new vlans. As a side note I run about 15 other containers and have not had any networking issues with them. I've verified after my network updates I can still access all the containers. Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 Try using host networking instead of bridge. And to state the obvious, just in case... http://192.168.20.160 takes you to the unraid interface, right? Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 Just now, coppit said: Try using host networking instead of bridge. And to state the obvious, just in case... http://192.168.20.160 takes you to the unraid interface, right? Haha yes. Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 Using host or bridge both have the same issue not finding the server. I'm going to install it on a VM and see if that works. Hope to get the docker working though. As a side note, just having Xeoma client running trying to find a server (without installing) on my MacBook pro is just crushing the battery and making it run super hot. As soon as I quit it operates normally. Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 Just to be sure, you're putting the port into a separate field, like the attached picture? Also, if you're running a firewall locally, try disabling it temporarily. ssh to the server, and try running netstat, searching for port 8090. I'm running in bridged mode, so my output looks like this: $ netstat -a -n -p | grep 8090 tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 21570/docker-proxy Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 And you're not using the free version of the client? Quote Link to comment
hendu Posted April 21, 2017 Share Posted April 21, 2017 I'm very interested in switching from Blue Iris to this if I can get the docker to work. I'm very tired of running a VM just for BI. Unfortunately, I get the following error in my logs. Any ideas? Failed to open 'libX11' Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 (edited) 32 minutes ago, coppit said: Just to be sure, you're putting the port into a separate field, like the attached picture? Also, if you're running a firewall locally, try disabling it temporarily. ssh to the server, and try running netstat, searching for port 8090. I'm running in bridged mode, so my output looks like this: $ netstat -a -n -p | grep 8090 tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 21570/docker-proxy Yes I am using ip/port/password just as you did in the client. Below is my output: netstat -a -n -p | grep 8090 tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 31392/docker-proxy 31 minutes ago, coppit said: And you're not using the free version of the client? Nope. Either you had posted instructions or I read it elsewhere that the free version doesn't allow remote connections. Just doing the trial standard version or beta. Edited April 21, 2017 by bokchoy Additional info Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 5 minutes ago, hendu said: I'm very interested in switching from Blue Iris to this if I can get the docker to work. I'm very tired of running a VM just for BI. Unfortunately, I get the following error in my logs. Any ideas? Failed to open 'libX11' I received this too at one point, but don't recall exactly what I was doing. I do know it's only happened once to me and it was post install of Xeoma. I fixed it by deleting the config directory and starting over. Quote Link to comment
hendu Posted April 21, 2017 Share Posted April 21, 2017 8 minutes ago, bokchoy said: I received this too at one point, but don't recall exactly what I was doing. I do know it's only happened once to me and it was post install of Xeoma. I fixed it by deleting the config directory and starting over. Sadly, reinstalling the container doesn't fix this. Deleting the config directory and starting over doesn't fix it either. Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 19 minutes ago, hendu said: Failed to open 'libX11' Huh. I vaguely recall seeing that before, and thinking that it was harmless. Do you have any other errors below that? Feel free to upload the log. The server should be running "headless" without a UI. Looking in my log, I don't see that message now. It also makes me wonder if you're using the right version (see below). bokchoy, your server is advertising port 8090 according to netstat. So that makes me think the problem is on the client side. Try connecting from another device, like with the iOS or Android client. And double-check your firewall on your computer. Also, a longshot: Can you guys try something for me? Try updating the container. You might need to do it using the "force update" from the advanced view. My recent handbrake container had an issue where an update was needed. Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 (edited) Verified Xeoma works when I run it in a VM and connect remotely from MacBook pro. Same computer I was using before. I'll try doing it from my iPhone. Edited April 21, 2017 by bokchoy Quote Link to comment
bokchoy Posted April 21, 2017 Share Posted April 21, 2017 Didn't work from my iPhone. Quote Link to comment
coppit Posted April 21, 2017 Author Share Posted April 21, 2017 Can you stop the container and re-run the netstat command? If it still returns a line, then some other container is on that port. Quote Link to comment
Recommended Posts
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.