Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Dockerfile #25

Closed
wants to merge 6 commits into from
Closed

Update Dockerfile #25

wants to merge 6 commits into from

Conversation

TonyBrobston
Copy link

@TonyBrobston TonyBrobston commented Aug 27, 2020

In reference to: #24

I grabbed the Dockerfile from https://hub.docker.com/r/jshridha/blueiris/dockerfile and made a few adjustments to get this building successfully.

I believe the main things were bionic -> xenial, adding RUN apt-get -y install apt-transport-https ca-certificates, and updating the resolution. Unfortunately the diff doesn't read that way since Github and Docker hub do not match... 馃う

Let me know if there's anything else that needs done.

@TonyBrobston
Copy link
Author

I also tried using FROM ubuntu:focal, but after a successful build, when running I got a bunch of success for less than 1 second and then exit 馃槥 :

blue-iris_1  | 2020-08-27 14:45:09,439 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
blue-iris_1  | 2020-08-27 14:45:09,441 INFO exited: novnc (exit status 1; not expected)
blue-iris_1  | 2020-08-27 14:45:10,443 INFO spawned: 'novnc' with pid 1364

@TonyBrobston
Copy link
Author

@jshridha

Hey, thanks for putting this repo together. Using what you've put together has been a huge step towards being able to run Blue Iris on my ubuntu server. I know very little about the majority of the technologies you've used to put this together and there's just about no way I could have gotten to where this repo is at. So, thanks.

I was wondering, are you still maintaining this repo?

I see myself using this solution for the foreseeable future and am willing to put some time in to fix things, however I don't want to get too far diverged from your master branch and I also don't want to publish my own docker image (I can, but it seems unnecessary since you have one). Is it likely that you will give feedback and eventually merge changes if I make some? Any help/insight is much appreciated.

Thanks,
Tony

@leonowski
Copy link

Hi Tony, I noticed you had some changes too. Take a look at my recent PR as well. I forked this project already too with my changes. Maybe we can work together on this since this project may longer be maintained.

@TonyBrobston
Copy link
Author

TonyBrobston commented Aug 29, 2020

@leonowski I'll take a look when I have some time. Have you published a docker image for yours? If @jshridha isn't interested in maintaining this repo, we should consider publishing something so we can continue forward; I'd be more than happy to work together 馃槃 .

@TonyBrobston
Copy link
Author

@leonowski
Copy link

@TonyBrobston - yes, it is on dockerhub:

Pull from leonowski/docker-blueiris

https://hub.docker.com/repository/docker/leonowski/docker-blueiris

Works well with the exception of importing and exporting configuration. Although, I found a script on the blueiris forums that does this manually. I can probably use that to roll our own import/export.

@leonowski
Copy link

@TonyBrobston The fork is on my github repo. We can work from there.

I put in a fix for the UI3 issue. It does extraction to correct location after install.

@TonyBrobston
Copy link
Author

@leonowski Cool, I'll switch over to your image when I'm at a good stopping point.

I'm currently trying to move from Unifi Video to Blue Iris and get close to feature parity. Shortly after that I plan to start trying to add AI integration. My only major requirement is that it's all run on an ubuntu machine. Here's the rough idea: https://www.youtube.com/watch?v=fwoonl5JKgo&t=307s

I'll likely close my pull requests to @jshridha's repo, fork your fork, and then work from there. It seems like you may have solved the same problems I was looking to solve.

The one piece I'm missing right now is that I want to be able to volume mount out my Blue Iris settings to my OS drive and then volume mount out my Blue Iris recordings to a different drive. For the recordings, it looks like that path is set in the Blue Iris settings; I'm not sure where the actual Blue Iris settings are stored though.

@leonowski
Copy link

That's funny. My efforts into this started because of that youtube video too. I was previously running Zoneminder. I tried out the Windows app in a VM along with a couple of containers to do the AI. It's working pretty awesome now. My goal now is to get everything running in Docker.

For your volume issues, it should be a simple matter of mounting paths on your host relative to paths in the container. Also, I included cifs-utils so you can also manually mount windows shares.

The settings seem to be stored in the windows registry. So, the .reg files in the persistent storage area should have all your settings. I will be exploring this later tonight to see how to manage backup/restore of settings.

@jshridha
Copy link
Owner

@leonowski @TonyBrobston

I just wanted to take a moment to thank you both for your pull requests and efforts to keep this project alive. I've been swamped with work, kids, and other projects so I haven't been able to give this project the TLC it deserves, but it still means a lot to see the project is useful to people.

I'd like to support you two (and the community) in any efforts moving forward to make this container more robust. I think the best starting point would be to accept @leonowski 's recent pull request and then try to get some of the ui3 fixes @TonyBrobston has proposed. Do you two agree with that path forward?

Also, if you think you'd prefer to fork the project and maintain it elsewhere, I fully understand and will support/test to help your efforts. I think it may be better to update this container since others are currently relying on it, but let me know your thoughts on all of that.

Thanks again for grabbing my attention back on this project. I've been watching the pull requests coming through with glee and am I excited to test them out.

@TonyBrobston
Copy link
Author

TonyBrobston commented Aug 29, 2020

@leonowski I fired up your image an am seeing some weird stuff; mainly the buttons are not displaying right and aren't clickable. I kept my /root/prefix32 volume mount, so maybe it's something weird there; I can always try deleting my settings in the volume mount and reconfigure.
image

That's funny. My efforts into this started because of that youtube video too. I was previously running Zoneminder. I tried out the Windows app in a VM along with a couple of containers to do the AI. It's working pretty awesome now. My goal now is to get everything running in Docker.
I've been wanting AI integration for awhile now. I'd really like reviewing my recordings to be a non-event. Right now it's so tedious.

On a side note, I had considered writing my own shim between Blue Iris and Deepstack. GentlePumpkin calls this "AI Tool". However, I think it may be worth taking a copy of docker-blueiris and see about running this "AI Tool" using the same setup. Certainly seems like a short-cut and an option that would allow us to focus on integration of tools rather than development of the tools themselves.

For your volume issues, it should be a simple matter of mounting paths on your host relative to paths in the container. Also, I included cifs-utils so you can also manually mount windows shares.

Gotcha. I'm not familiar with cifs-utils. I'll look into it if needed.

The settings seem to be stored in the windows registry. So, the .reg files in the persistent storage area should have all your settings. I will be exploring this later tonight to see how to manage backup/restore of settings.

Awesome 馃憤 . This is my next hurdle, so if you solve it that'd be awesome.

@TonyBrobston
Copy link
Author

I'd like to support you two (and the community) in any efforts moving forward to make this container more robust. I think the best starting point would be to accept @leonowski 's recent pull request and then try to get some of the ui3 fixes @TonyBrobston has proposed. Do you two agree with that path forward?

I agree I can do a sort of manual rebase and add some of my changes in if needed. It shouldn't be too difficult.

Also, if you think you'd prefer to fork the project and maintain it elsewhere, I fully understand and will support/test to help your efforts. I think it may be better to update this container since others are currently relying on it, but let me know your thoughts on all of that.

I'd prefer to contribute to jshridha/docker-blueiris. My only concern is timeliness and on the same note, respect that we all have limited time, resources, etc. Maybe we can start with you (@jshridha ) approving/merging requests as you see fit and if you don't have the time, resources, etc. to help, maybe we can expand the maintainers to help, if you're open to that.

Thanks again for grabbing my attention back on this project. I've been watching the pull requests coming through with glee and am I excited to test them out.

That's exciting. I'm glad you're excited. I'm sure it's also nice to have some additional thoughts, perspective, and man-power. I'm currently booty-blinded by the idea of AI video surveillance. So, I plan to ride this inspiration-wave until it is gone.

@jshridha
Copy link
Owner

I'm currently booty-blinded by the idea of AI video surveillance. So, I plan to ride this inspiration-wave until it is gone.

I have it working on my box and it's FANTASTIC. Hope we can get that integrated here as well. Also, it would be nice to drop the AITool exe dependency.

@TonyBrobston
Copy link
Author

I have it working on my box and it's FANTASTIC. Hope we can get that integrated here as well. Also, it would be nice to drop the AITool exe dependency.

I haven't dug in enough to quite understand the needs/limitations of the AITool exe dependency. So, it seems like Blue Iris sees motion, then drops screenshots into a folder that the AITool is watching? Then the AITool does a post call to Deepstack with this screenshot to determine what is in the screenshot? Then somehow the AITool relays that information back to Blue Iris to determine if that recording on motion should be kept or not? I'm sure I'm missing some details here.

@jshridha
Copy link
Owner

That's basically the process. Watch Folder -> Send to deep stack -> If it's a person, dog, bear, etc. -> Send post request to blueiris to trigger higher quality recording.

@TonyBrobston
Copy link
Author

That's basically the process. Watch Folder -> Send to deep stack -> If it's a person, dog, bear, etc. -> Send post request to blueiris to trigger higher quality recording.

Ah, I was missing the fact that Blue Iris has some sort of http service. Is it a restful web service? 馃

@leonowski
Copy link

I actually forgot to mention that I'm not using the AI tool windows tool. Someone made a nice docker container that runs things in nodejs and configured easily with json files:

danecreekphotography/node-deepstackai-trigger

So, with node-deepstackai-trigger, deepstack ai, and blueiris all running in Docker, this works perfectly. I'm just scared to make the jump to the dockerized blueiris until I know everything works well.

@TonyBrobston
Copy link
Author

I actually forgot to mention that I'm not using the AI tool windows tool. Someone made a nice docker container that runs things in nodejs and configured easily with json files:

danecreekphotography/node-deepstackai-trigger

Very cool!

So, with node-deepstackai-trigger, deepstack ai, and blueiris all running in Docker, this works perfectly. I'm just scared to make the jump to the dockerized blueiris until I know everything works well.

That's fair. I think we'll be there soon enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants