EE post-upgrade - help needed please: custom app, and app management

Hello all

I have overcome some of the difficulties I experienced when I upgraded from Dragonfish yesterday (high CPU use due to one of a couple of apps) but I have some problems to overcome and I’d like some opinions please:

  1. Given the ability to now install a docker-based custom “app” by going to apps|discover apps|custom app I would like to install Motioneye (CCTV video monitoring).

I am struggling to work out how to configure the menu options.

There is a working docker compose yaml for it and this works in dockge if I use Stux’ jlmkr approach to run dockge but for some reason on EE this now demands 100% CPU whereas on Dragonfish, it did not.

I tried installing dockge as a TrueNAS app but I couldn’t get Motioneye to run using the same yaml.

The yaml file is

version: "3.5"
services:
  motioneye:
    # ToDo: Change from unstable dev/edge to stable GitHub registry release and Docker registry release, once available
    image: ghcr.io/motioneye-project/motioneye:edge
    # https://github.com/motioneye-project/motioneye/pkgs/container/motioneye
    hostname: motioneye
    #    motioneye:
    container_name: motioneye
    environment:
      - HOSTNAME=motioneye
    ports:
      # host:container    
      #      - 8081:8081 # if streaming in UI, open this port 
      #        (or choose another in the UI and here)
      - 8765:8765
    volumes:
      # host:container    
      - /etc/localtime:/etc/localtime:ro
      - /dev/dri:/dev/dri
    #  - /mnt/mainraid/docker/data/motioneye/etc:/etc/motioneye
    #  - /mnt/mainraid/docker/data/motioneye/videos:/var/lib/motioneye
    restart: unless-stopped
networks: {}

Hence Question 1: how do I convert this into a trueNAS custom app please?

Question 2 is whether it would be best for me to

  • run the few apps as a mix of official and TN custom apps
    *or
  • run them all via Stux’ jlmkr using dockge
    or
    *try to get the official TN dockge app to work and run them inside

“Best” in this case means reliability and lowest resource consumption. Given that I am not performing very well in my hobbby IT role, best ought to also mean “simplest”!

Thanks for any advice or help you can offer.

Go to Apps > Discover Apps > Custom App. Then fill in the following fields:

Custom App Fields
Repository: ghcr.io/motioneye-project/motioneye
Tag: edge
Environment Variables:
- Name: HOSTNAME
- Value: motioneye
Ports:
- Container Port: 8765
- Host Port: 8765
Storage:
- Type = Host Path, Mount path = /etc/localtime, Read Only, Host Path=/etc/localtime
- Type = Host Path, Mount path = /dev/dri, Host Path=/dev/dri

Restart Policy: Leave this on 'No' until you're sure the app is working correctly. Set it to 'Unless Stopped' afterwards.

Uploading compose yaml files is also possible in the three-dots menu (Install via YAML). Haven’t used that one yet.

What method you use for running apps is your choice. It’s up to you to try them out and figure what works best for you.
If you use custom-app they show in the web-interface and you don’t have to install additional management software. If your app only consists of a single container that approach works well.

This is great!

I was going to embrace precisely the approach you kindly detailed for me but I thought I’d risk the “three dots” approach which you mentioned (which I hadn’t even noticed).

It needed me to log out and back in again for it to appear in my list of apps, but the important thing is that it has worked and it’s now running. Thanks very much for this help.

I thought that I shall need to try three “management” methods but I think the single container approach which you mentioned is simple enough and having the apps all running in the dashboard (rather than removed by one additional layer of UI) is appealing. I’ll stick with this ordinary method for now.

I have everything running how I need, but the burdensome CPU problem remains to be solved (currently sitting at about 82% cf. the more typical value seen on Dragonfish Cobia etc. of half that).

Thanks again for this very valuable help.

1 Like