Giter Club home page Giter Club logo

nxwitness's People

Contributors

dependabot[bot] avatar opticon454 avatar ptr727 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

nxwitness's Issues

NX - Access to plugin directory - password required

Describe the problem?

Access to plugin directory - password required

Steps to reproduce:
New Testinstallation - no changes
Install Plugins in
/opt/networkoptix/mediaserver/bin/plugins and /opt/networkoptix/mediaserver/bin/plugins_optinal need a passwort

Configuration:
Synology Docker
NX 5.1.2.37996

With NX-LSIO, the release for the other file systems does not work for me (fuse.shfs,btrfs,zfs)

Suggestion for license management

We all wish that NXW wouldn't use MAC address for licensing, but until they catch up with containerization, there's a pretty straightforward way to fix this, even on kubernetes.

  1. take the MAC address as a docker parameter
  2. use the following in your startup script called as the entrypoint: ip link set eth0 address 01:02:03:04:05:06 (replacing the mac with the one specified as the param)
  3. profit.

This requires NET_ADMIN on kubernetes, but at least doesn't require host networking.

BuildX error when using Ubuntu Focal Fossa 20.04 base image

#8 14.76 Created symlink /etc/systemd/system/multi-user.target.wants/systemd-resolved.service → /lib/systemd/system/systemd-resolved.service.
#8 14.77 ln: failed to create symbolic link '/etc/resolv.conf': Device or resource busy
#8 14.77 Created symlink /etc/systemd/system/multi-user.target.wants/ondemand.service → /lib/systemd/system/ondemand.service.
#8 14.77 Created symlink /etc/systemd/system/sysinit.target.wants/systemd-pstore.service → /lib/systemd/system/systemd-pstore.service.
#8 14.78 Initializing machine ID from random generator.
#8 15.02 Setting up networkoptix-metavms-mediaserver (4.3.0) ...
#8 15.09 Detected runtime type: docker.
#8 15.09 System has not been booted with systemd as init system (PID 1). Can't operate.
#8 15.09 Failed to connect to bus: Host is down
#8 15.09 System has not been booted with systemd as init system (PID 1). Can't operate.
#8 15.09 Failed to connect to bus: Host is down
#8 15.16 sysctl: setting key "kernel.core_pattern": Read-only file system
#8 15.17 dpkg: error processing package networkoptix-metavms-mediaserver (--configure):
#8 15.17  installed networkoptix-metavms-mediaserver package post-installation script subprocess returned error exit status 255
#8 15.17 Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
#8 15.19 Errors were encountered while processing:
#8 15.19  networkoptix-metavms-mediaserver
#8 15.20 E: Sub-process /usr/bin/dpkg returned an error code (1)
#8 ERROR: executor failed running [/bin/sh -c apt-get update     && apt-get install --no-install-recommends --yes         ./vms_server.deb     && apt-get clean     && apt-get autoremove --purge     && rm -rf /var/lib/apt/lists/*     && rm -rf ./vms_server.deb]: exit code: 100
------
 > [5/7] RUN apt-get update     && apt-get install --no-install-recommends --yes         ./vms_server.deb     && apt-get clean     && apt-get autoremove --purge     && rm -rf /var/lib/apt/lists/*     && rm -rf ./vms_server.deb:
------
Dockerfile:62
--------------------
  61 |     # Install the mediaserver
  62 | >>> RUN apt-get update \
  63 | >>>     && apt-get install --no-install-recommends --yes \
  64 | >>>         ./vms_server.deb \
  65 | >>>     && apt-get clean \
  66 | >>>     && apt-get autoremove --purge \
  67 | >>>     && rm -rf /var/lib/apt/lists/* \
  68 | >>>     && rm -rf ./vms_server.deb
  69 |     
--------------------
error: failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c apt-get update     && apt-get install --no-install-recommends --yes         ./vms_server.deb     && apt-get clean     && apt-get autoremove --purge     && rm -rf /var/lib/apt/lists/*     && rm -rf ./vms_server.deb]: exit code: 100
Error: buildx call failed with: error: failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c apt-get update     && apt-get install --no-install-recommends --yes         ./vms_server.deb     && apt-get clean     && apt-get autoremove --purge     && rm -rf /var/lib/apt/lists/*     && rm -rf ./vms_server.deb]: exit code: 100

Error appears to be in NxMeta 4.3 Beta.
Reverting to Bionic / 18.04 resolves the error.
Switch to Focal / 20.04 when upstream error is resolved.

Docker access

I followed the docker compose script, container is running but not accessible via local address ending in 10.10.x.x:7001

Makefile problems

Changing M4 files does not rebuild, reports no changes.
Copy all output files does not trigger, reports no changes.
Add docker cleanup in clean task.

`DWSpectrum` container does not continue running

Using podman as a user to run docker.io/ptr727/dwspectrum as a rootless container results in a container that doesn't continue to run, unlike the docker.io/ptr727/dwspectrum-lsio image. This is on a Debian Bullseye (Testing) host with podman 3.0.1.

Podman run command:

podman run --cgroups=no-conmon   --detach --pull=always   --log-driver=journald   --log-opt tag=dwspectrum   --name=dwspectrum   --env TZ=Americas/Detroit   --hostname=watchdog   --dns-search=subly.me   --publish 7001:7001   --volume /tank/enc/dwspectrum/config:/config   --volume /tank/enc/dwspectrum/media:/media   --volume /tank/enc/dwspectrum/archive:/archive   docker.io/ptr727/dwspectrum:4.2.0.32660

The above command was run by a user. I ran the same command as root (rootful container) but didn't notice different behavior. The container still did not continue to run in the background after issuing the command.

I've resorted to using the dwspectrum-lsio image which works but I'm curious why the non-LSIO image doesn't continue to run.

Disable publishing of stable labels

Publishing of stable labels to docker images are temporarily disabled.

The problem scenario:

  • The stable tag was added to 4.2 versioned releases in docker.
  • Nx releases JSON API data promoted 5.0 to "released" status. (per my interpretation of the data)
  • The stable tag was added to the 5.0 versioned releases in docker.
  • Nx releases JSON API data reverted the change, and again made 4.2 the "released" version.
  • In-place upgrading from 4.2 to 5.0 is a Nx supported scenario, downgrading from 5.0 to 4.2 is not a Nx supported scenario.
  • Any system using the stable tag would have automatically upgraded their 4.2 build to the 5.0 build.
  • As it is not possible to in-place downgrade builds, the stable tag cannot be re-applied to the 4.2 builds.

Publishing of stable labels will resume when 5.0 is again promoted to a "released" status.

P.s. Refer to best practices and use case studies for "fix forward vs. roll back".

ARM version

Describe the problem?

docker pull ptr727/nxmeta-lsio:latest
latest: Pulling from ptr727/nxmeta-lsio
no matching manifest for linux/arm64/v8 in the manifest list entries

no support for ARM version.

the official NxMeta installer download page, it has arm version
https://meta.nxvms.com/download/arm

how to update ptr727/nxmeta-lsio to support ARM devices likewise in the official NxMeta software

Disable automatic Nx version updates during build

Nx's publishing of information to their releases JSON API is not currently considered reliable enough for hands off automation.

Only the develop branch will use online version information from the CreateMatrix utility at build time.
The main branch still relies on the static Version.json file I manually curate and test, when observing version changes via VisualPing.
I will enable online updates for the main branch when I am confident in the CreateMatrix and releases.json logic.

Examples of problems:

  • Nx promoted v5 to stable, then removed v5 and reverted v4 back to stable, this breaks the stable tag logic as Nx does not support downgrades.
  • The contents of the releases.json file is not reliable. e.g. on occasion it would contain raw error messages instead of JSON:
    • This XML file does not appear to have any style information associated with it. The document tree is shown below. ...
    • {"resultCode":500,"errorText":"Unexpected error somewhere inside"}

Expose Plugin Folder as a Volume

I have been using this container for some home recording/testing and though I'd have a play with the Open Vino plugin but unfortunately the system/plugin folders aren't exposed. Would it be possible to add them as a volume please?

Licensing

I've been playing around to see whether the licensing issue really is an issue.

What I've tried:

  1. Played with both your docker image and thehomerepot one.
  2. Tried deleting the container, and recreating it from the docker-compose (via portainer)
  3. Tried starting with version 4.2 in the docker-image config of the docker-compose file. And then updating it to 'latest'. (via portainer)

To test if the license would break, I would activate a trial license and note down the HWID.
And then verify if the HWID changed or the trial license got deactivated.
Which never happened ... everything kept working perfect.

So what WILL make the nxwitness in docker setup make things go bad?
I don't want to have any issues with licences.

Please note, I do setup a fixed mac-address in docker-compose:

version: "3"

services:
  nx-witness:
    container_name: nx-witness
    image: 'thehomerepot/nxwitness:latest'
    restart: unless-stopped
    environment:
      TZ: "Europe/Brussels"
    volumes:
      - /opt/networkoptix/config:/config
      - /opt/networkoptix/recordings:/archive
    mac_address: "AA:BB:CC:DD:EE:FF" # something real ...
    ports:
      - "7001:7001"

Storage errors when using SMB

Describe the problem?

This is not really an issue with the container, but I have spent a good amount of time before I could figure it out and I thought I'd leave it here in case someone else run into the same issue. And I'm not sure how to make proper pull requests/working with Github overall.

I use a separate NAS (Synology) for media storage, and the Docker host is a Debian VM. So what I did was to mount the file share in the docker host via SMB. And then bind mount that into the container at /media. This worked, kind of. But there was a generic storage error message constantly popping up. And I could tell that some of the analytics data (motion tracking, metadata etc) was nowhere to be found, even if the video files got saved to the NAS.

So in order for the analytics db to work, you have to mount the NAS folder using NFS in the container using a volume. Here is my compose config:

services: nxwitness: <<: *common-keys-core image: docker.io/ptr727/nxwitness-lsio:stable container_name: nxwitness restart: unless-stopped network_mode: host environment: <<: *default-tz-puid-pgid volumes: - /opt/docker/data/nxwitness/config:/config - nxwitness-vol:/media volumes: nxwitness-vol: driver_opts: type: "nfs" o: "addr=10.180.10.22,nfsvers=4" device: ":/volume1/nxwitness-meta"

Now you can configure /media as a location for analytics data. It will warn about it being a local path but that warning can be ignored.

Mount der Config und Aufzeichnung

Hallo

beim Aufsetzen eines neuen Containers sind keine Daten im config und media Verzeichnis.
Haben sich diese geändert - und wenn ja wohin?

Danke

I am not affiliated with Network Optix, I cannot provide support for their products, please contact Network Optix Support for product support issues.

If the issue is verifiably related to the Dockerfile or build scripts, please continue, and provide as much information as possible.

Docker images not created for "5.1.3.38363"

Hi, thank you a lot for the NXWitness Docker images. I noted that for the latest stable release "5.1.3.38363" of 11 March 2024 no Docker images are created. Again thanks for your work.

File Location On Unraid.

Can you help me get the Unraid share to show up in DW. I have tried for 2 days now and i cant seem to get it done.

Thanks

Disable posting docker images to GHCR

Builds keep failing due to posting to GHCR failing.
Seems to be a GitHub Actions or GHCR networking issue.
See post in GitHub Community.

Disabling posting to GHCR until issue is permanently resolved.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.