Blue Iris run as a VM or Docker

ALias

n3wb
Aug 31, 2025
9
0
Earth USA
I am consolidating servers and moving to virtualization and containers for the various services I run locally.

On the topic of Blue Iris I have some questions, any input would be greatly appreciated especially from those who have run from a VM or container (Docker, etc).

1. Can BI be run from a VM or container?
1a. If yes which would provide the best performance (equal or as close to bare metal)?

2. Server will be setup as Z490 main board, 64gb memory, 12gb NVDA GPU, 750watt PS, i10700K CPU, 8tb storage space ssd/hdd config, 256gb NVME for OS boot, a GPU yet to be spec'd for BI graphics processing, 4 port 1gbs Intel NIC. This spec has been verified as sufficient with some future proofing built in. Any suggestions to make it tighter/robust is welcomed.

3. Total number of cameras will be +/-10.

4. FYI, host system resources (cpu, memory, graphics, storage) will be configured in container/vm per requirements. BI will get a dedicated amount of resources to ensure consistent availability and performance. If you have any suggestions on min/max resource allocation please share.

Thank you in advance for your input.
 
When running virtually GPU passthrough to the VM is a must on the hypervior to be able to utlize Quick Sync.
GPU for AI proccessing.
 
That server will be more than powerful enough.

Blue Iris is a traditional windows GUI program so it would probably be a waste of time trying to run it in a container/docker. It will work fine in a virtual machine. For a load of 10 cameras, I would allocate at least 10 GB of RAM and 4 to 8 CPU cores. You can always adjust as needed later. In a well-optimized Blue Iris installation, you'll be using sub streams for most or all of the cameras, so "idle" CPU usage, with nobody watching the cameras, should be fairly low. CPU usage will rise when someone is viewing a high resolution camera in "solo" or maximized mode, because that requires Blue Iris to do additional video decoding. Remote viewing in particular can be CPU intensive because it requires Blue Iris to encode an H.264 video stream in realtime. You'll want to allocate enough CPU cores to handle the peak load your system gets, even if that means Blue Iris only uses around 10% of the allocated CPU most of the time.

Quick Sync is mostly irrelevant anymore. Don't worry about passing through a GPU unless you want to use it for AI processing (which is optional; the models used for AI analytics can run on CPU). I don't use AI in any of my Blue Iris installations so I'm not really up to date on the system requirements for that, but you will have plenty of CPU and RAM to spare if needed and you can always add a GPU later.

For video recording, I would recommend passing through an entire hard drive to the VM (or more than one if you need more capacity). If you are going to record to a virtual disk, I'd suggest making it a separate virtual disk from the one you put the OS on, and consider making it thick provisioned because it will fill up relatively fast anyway and stay nearly full at all times. Thin provisioning would be just added overhead I suspect.

I should also note there are utilities available to remove built-in Windows components to bring its RAM usage down and have less crap consuming CPU intermittently. Here's one I've used on an old tablet which worked fine: Revision | Revision
 
Last edited:
Overkilled. I use an Optiplex Micro PC with I9-9900T CPU with 32GB of ram and a Synology NAS. The PC runs Proxmox with 4VMs; Windows 10 with BI, Debian with CodeProject.AI thru CPU and ALPR in Docker, Home Assistant, another Debian CLI only.
I got 15 cameras, including 4 LPR cameras.
 
I run mine in a vm. I give it 10 cpu and 6 gb of ram to start(dynamic) and I could get by with less cpu, I just give it more cuz I can
 
Overkilled. I use an Optiplex Micro PC with I9-9900T CPU with 32GB of ram and a Synology NAS. The PC runs Proxmox with 4VMs; Windows 10 with BI, Debian with CodeProject.AI thru CPU and ALPR in Docker, Home Assistant, another Debian CLI only.
I got 15 cameras, including 4 LPR cameras.
The server is also going to host other services/applications so yes on the surface the specs seem excessive but BI will be sharing space with other stuff so it all balances out. I appreciate the feedback, sorry took so long to reply but I didnt get any emails tat I received response to my query, will have to look into this.
 
That server will be more than powerful enough.

Blue Iris is a traditional windows GUI program so it would probably be a waste of time trying to run it in a container/docker. It will work fine in a virtual machine. For a load of 10 cameras, I would allocate at least 10 GB of RAM and 4 to 8 CPU cores. You can always adjust as needed later. In a well-optimized Blue Iris installation, you'll be using sub streams for most or all of the cameras, so "idle" CPU usage, with nobody watching the cameras, should be fairly low. CPU usage will rise when someone is viewing a high resolution camera in "solo" or maximized mode, because that requires Blue Iris to do additional video decoding. Remote viewing in particular can be CPU intensive because it requires Blue Iris to encode an H.264 video stream in realtime. You'll want to allocate enough CPU cores to handle the peak load your system gets, even if that means Blue Iris only uses around 10% of the allocated CPU most of the time.

Quick Sync is mostly irrelevant anymore. Don't worry about passing through a GPU unless you want to use it for AI processing (which is optional; the models used for AI analytics can run on CPU). I don't use AI in any of my Blue Iris installations so I'm not really up to date on the system requirements for that, but you will have plenty of CPU and RAM to spare if needed and you can always add a GPU later.

For video recording, I would recommend passing through an entire hard drive to the VM (or more than one if you need more capacity). If you are going to record to a virtual disk, I'd suggest making it a separate virtual disk from the one you put the OS on, and consider making it thick provisioned because it will fill up relatively fast anyway and stay nearly full at all times. Thin provisioning would be just added overhead I suspect.

I should also note there are utilities available to remove built-in Windows components to bring its RAM usage down and have less crap consuming CPU intermittently. Here's one I've used on an old tablet which worked fine: Revision | Revision
Appreciate the feedback, let me just clarify what you noted so I understand. Just as FYI the server is going to host other apps/services so hw specs cover everything. I am not running AI at the moment but want to keep that as an option for future and take into consideration for the build and config.

Would it be advantageous to have a gpu like an NVDA 10x or 20x series which are under $100 to take pressure off cpu, do processing and speed things up and be there if wanted to play with AI? And if I did is setting up pass through pretty straight forward and works well? I havent done that in the past so just want to clarify.

As for storage do you recommend just 1 drive for live streams and stored (triggered) material? I currently use 1 drive for storing live streams (24x7) and triggered content for X days and then moving to another drive for longer term storage before deleting. This is a setup I came up with mainly due to working with hardware I had on hand and repurposed, it seems to work well but if going through this want to make improvements where they make sense and have redundancy.

As for storage type whats the current thinking or recommendations on hw, SSD or HDD? And should one buy into the marketing where drives are advertised as NVR or camera specific and are usually more $$?

Lastly, do you know what the future holds for BI? Is there a v6 on the horizon or any pending improvements that people are looking forward to?

Have there been any tools or tweaks in the current version 5.9.x that are a real benefit that somone running v5.6.5 may want to consider upgrading? I kind of ooeprate on the tinking that if there is nothing new that will be of immediate use to my situation or drastically improve performance/experience then I adopt a wait and see stance.

Thanks again for your inpu, its much appreciated.
 
Overkilled. I use an Optiplex Micro PC with I9-9900T CPU with 32GB of ram and a Synology NAS. The PC runs Proxmox with 4VMs; Windows 10 with BI, Debian with CodeProject.AI thru CPU and ALPR in Docker, Home Assistant, another Debian CLI only.
I got 15 cameras, including 4 LPR cameras.
I use a dell vostros now and it is plenty for my setup. I want to consolidate boxes into one and use VMs/containers where it makes sense to centralize stuff and cut down on the number of physical cpu's.

Do you run a gpu with your BI? If so which one?

To confirm you run your BI in a container or just CP?

I heard rumor but never followed up that there is a new AI server for BI, from what I recall codeproject was the original, not sure what the new one is. I tried CP but didnt feel that it was quite there yet but that was 4 years or so ago now.
 
I run mine in a vm. I give it 10 cpu and 6 gb of ram to start(dynamic) and I could get by with less cpu, I just give it more cuz I can
Good to know, seems like a VM would be just fine provided on how I have to slice up cores/mem/hdd for BI and other apps/services. What cpu do you have? Any issues with pass through?
 
When running virtually GPU passthrough to the VM is a must on the hypervior to be able to utlize Quick Sync.
GPU for AI proccessing.
the gpu is also useful for transcoding as well right? takes stress off cpu? for the cost i may put in a older gpu just to recoup overhead or if i go to AI.
 
Good to know, seems like a VM would be just fine provided on how I have to slice up cores/mem/hdd for BI and other apps/services. What cpu do you have? Any issues with pass through?
I run in hyper v, so pass through really isnt a thing and there really isnt anything to be gained by it either. I dont recall what cpu. Its a xeon silver something....
 
I use a dell vostros now and it is plenty for my setup. I want to consolidate boxes into one and use VMs/containers where it makes sense to centralize stuff and cut down on the number of physical cpu's.

Do you run a gpu with your BI? If so which one?

To confirm you run your BI in a container or just CP?

I heard rumor but never followed up that there is a new AI server for BI, from what I recall codeproject was the original, not sure what the new one is. I tried CP but didnt feel that it was quite there yet but that was 4 years or so ago now.

No GPU other than what's inside of the i9-9900T.

BI runs in Windows in VM.
CP runs in docker in Debian in a VM.
 
Would it be advantageous to have a gpu like an NVDA 10x or 20x series which are under $100 to take pressure off cpu, do processing and speed things up and be there if wanted to play with AI? And if I did is setting up pass through pretty straight forward and works well? I havent done that in the past so just want to clarify.

As for storage do you recommend just 1 drive for live streams and stored (triggered) material? I currently use 1 drive for storing live streams (24x7) and triggered content for X days and then moving to another drive for longer term storage before deleting. This is a setup I came up with mainly due to working with hardware I had on hand and repurposed, it seems to work well but if going through this want to make improvements where they make sense and have redundancy.

As for storage type whats the current thinking or recommendations on hw, SSD or HDD? And should one buy into the marketing where drives are advertised as NVR or camera specific and are usually more $$?

Lastly, do you know what the future holds for BI? Is there a v6 on the horizon or any pending improvements that people are looking forward to?

Have there been any tools or tweaks in the current version 5.9.x that are a real benefit that somone running v5.6.5 may want to consider upgrading? I kind of ooeprate on the tinking that if there is nothing new that will be of immediate use to my situation or drastically improve performance/experience then I adopt a wait and see stance.
An Nvidia GPU should be able to accelerate nearly any AI workload as long as there is enough video memory for it. It should be fairly easy to pass through if you use Proxmox as the hypervisor. However just having the GPU available will not help with BI's transcoding. You can specify to Blue Iris to use the GPU for hardware accelerated decoding and/or encoding purposes (these are configured in different places in BI) but it will not make a tremendous difference in CPU usage, and it will most likely raise your system's power consumption instead of reducing it. Just adding the GPU will raise power consumption significantly though even if you aren't using it for anything yet.

For storage, I'm not sure what you mean by "storing live streams and triggered content". BI lets you record each camera continuously OR event-triggered, but not both to different places unless you clone the camera instances. The rule of thumb for best storage performance and reliability is to not move clips when the drive is full, just delete them. If you have multiple hard drives, split the load by configuring some cameras to record to each of the drives and just have each drive configured to delete clips when full.

By having Blue Iris move clips between drives, both drives get the full load of having all clips written onto them, but you also double the workload of the first drive because now it must read every clip file completely one extra time. For a properly functioning hard drive this shouldn't cause much wear and tear but it can slow down the access time when you want to read clips that are on the first hard drive. This configuration also increases the complexity of Blue Iris's clip management duties, and many of us who have been using Blue Iris for a long time have encountered issues before with Blue Iris failing to move files off a full disk because of some bug.

SSDs perform great for storing Blue Iris video and will make access time / seek time better especially when playing recordings for a group of cameras via the Timeline. This is one case where it is justifiable to record directly to the SSD and when full move the clips to a hard drive for longer term storage.

Just make sure you check the SSD's endurance specification and avoid buying one with a low amount of endurance. Endurance is usually labeled "TBW" meaning "terabytes written". Doubling the drive capacity usually doubles the endurance. The average 4 TB SSD should have around 2400 TBW for its endurance spec, meaning the manufacturer will warranty the drive for up to 2400 terabytes of total writes (or until the regular warranty period expires, whichever happens first). It isn't a hard limit for the amount of data you can write to the SSD before it fails, but it is the best indicator we have of how long it should last. So If you buy a 1 TB SSD you can expect it to last about a quarter as long as a 4 TB SSD would, under the same video recording load.

Hard drives advertised for specific duties (e.g. NAS or NVR/surveillance) are kind of an unknown value. Hard drive manufacturers tend to be unspecific about the exact benefits. Like, we don't know if they used higher quality materials, better cooling technology, or maybe the firmware is coded to prevent long delays due to trying to read or write a bad sector. Or maybe it is just a different sticker on the drive and a different device identifier written into its firmware. We just don't know. So people just buy them based on the belief it will be slightly more reliable in the long term. I don't worry about it for drives where I'm going to be recording only on event triggers. But for stuff where I'll record continuously, I do prefer to buy a "surveillance" hard drive for the peace of mind.

BI 6 will be coming out soon but I get the feeling that won't be a hugely significant update. BI doesn't operate on a "buy the new major version upgrade" pricing model anymore. It is just a "pay for the next year of updates" model, so there's not much incentive to hold back new features for version 6. Heck the version 6 color scheme has already been making its way into version 5 in the last few patches.

There have been way too many changes to summarize between 5.6.5 and 5.9.9.90 which we're on now. Nothing huge that I can think of. Maybe AI integration is better but I don't use AI so I wouldn't really know. If you reinstall on new hardware or want to get started using AI with it, then I would definitely recommend renewing your support plan and installing the latest version. But otherwise if 5.6.5 works well for you, then it wouldn't hurt to stick with it.