Problem: install MongoDB for Unifi Controller


TDCroPower
 Share

0

Recommended Posts

Armbianmonitor:

Hello everyone,

 

I need some help from the community.
I would like to install the Unifi Controller on my OrangePi Plus 2e, but it requires mongodb see here...

[root@OrangePi:mongodb]$ apt-get install unifi
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 unifi : Depends: mongodb-server (>= 2.4.10) but it is not installable or
                  mongodb-10gen (>= 2.4.14) but it is not installable or
                  mongodb-org-server (>= 2.6.0) but it is not installable
         Depends: mongodb-server (< 1:3.6.0) but it is not installable or
                  mongodb-10gen (< 3.6.0) but it is not installable or
                  mongodb-org-server (< 3.6.0) but it is not installable
E: Unable to correct problems, you have held broken packages.
[root@OrangePi:mongodb]$

 

...but mongodb is not present in the armbian repos...

[root@OrangePi:~]$ apt-get install mongodb
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package mongodb is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'mongodb' has no installation candidate
[root@OrangePi:~]$

 

I was able to install mongodb with the help of THIS manual and THESE binaries and it also starts successfully...

[root@OrangePi:mongodb]$ service mongodb start
[root@OrangePi:mongodb]$ service mongodb status
● mongodb.service - High-performance, schema-free document-oriented database
   Loaded: loaded (/lib/systemd/system/mongodb.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2020-02-18 18:03:06 CET; 6s ago
 Main PID: 7635 (mongod)
    Tasks: 9 (limit: 4915)
   Memory: 41.2M
      CPU: 551ms
   CGroup: /system.slice/mongodb.service
           └─7635 /usr/bin/mongod --quiet --config /etc/mongodb.conf

 

Feb 18 18:03:06 OrangePi systemd[1]: Started High-performance, schema-free document-oriented database.
Feb 18 18:03:06 OrangePi mongod[7635]: 2020-02-18T18:03:06.187+0100 I CONTROL
Feb 18 18:03:06 OrangePi mongod[7635]: 2020-02-18T18:03:06.187+0100 W CONTROL  32-bit servers don't have journaling enabled by default. Please use --journa
Feb 18 18:03:06 OrangePi mongod[7635]: 2020-02-18T18:03:06.187+0100 I CONTROL

 

Does anyone know a solution how I can install unifi or explain to the installation that I have installed mongodb?

Or is there another better solution to solve the problem?

Link to post
Share on other sites

Donate and support the project!

57 minutes ago, TDCroPower said:

Does anyone know a solution how I can install unifi or explain to the installation that I have installed mongodb?

Or is there another better solution to solve the problem?

 

the OS mongo packages are usually super outdated, not surprised they don't work.

 

Consider this container.  the linuxserver.io project builds multiarch containers for arm32, arm64, and x86.

https://hub.docker.com/r/linuxserver/unifi-controller

Link to post
Share on other sites

thank you lanefu for your fast answer!

I have never used docker before.
Is there anything I need to be aware of?
How do I get the docker container, because it is mounted on my OrangePi?

 

Here are the dependecies from unifi...

Package: unifi
Version: 5.12.35-12979-1
Section: java
Priority: optional
Architecture: all
Depends: binutils, coreutils, adduser, libcap2, curl,
 mongodb-server (>= 2.4.10) | mongodb-10gen (>= 2.4.14) | mongodb-org-server (>= 2.6.0),
 mongodb-server (<< 1:3.6.0) | mongodb-10gen (<< 3.6.0) | mongodb-org-server (<< 3.6.0),
 java8-runtime-headless, jsvc (>=1.0.8)
Pre-Depends: debconf (>= 0.5) | debconf-2.0
Conflicts: unifi-controller
Provides: unifi-controller
Replaces: unifi-controller
Installed-Size: 164519
Maintainer: UniFi developers <unifi-dev@ubnt.com>
Description: Ubiquiti UniFi server
 Ubiquiti UniFi server is a centralized management system for UniFi suite of devices.
 After the UniFi server is installed, the UniFi controller can be accessed on any
 web browser. The UniFi controller allows the operator to instantly provision thousands
 of UniFi devices, map out network topology, quickly manage system traffic, and further
 provision individual UniFi devices.
Homepage: http://www.ubnt.com/unifi

 

i have just tried to install unifi without the mongodb dependecies (which is deactivated by most of the instructions anyway) but even this leads to problems...

[root@OrangePi:mongodb]$ apt-get download unifi
Get:1 https://dl.ubnt.com/unifi/debian stable/ubiquiti armhf unifi all 5.12.35-12979-1 [99.2 MB]
Fetched 99.2 MB in 23s (4,309 kB/s)
[root@OrangePi:mongodb]$ dpkg --ignore-depends=mongodb-server -i unifi_5.12.35-12979-1_all.deb
Selecting previously unselected package unifi.
(Reading database ... 85492 files and directories currently installed.)
Preparing to unpack unifi_5.12.35-12979-1_all.deb ...
Unpacking unifi (5.12.35-12979-1) ...
Setting up unifi (5.12.35-12979-1) ...
Created symlink /etc/systemd/system/multi-user.target.wants/unifi.service → /lib/systemd/system/unifi.service.
Job for unifi.service failed because a timeout was exceeded.
See "systemctl status unifi.service" and "journalctl -xe" for details.
invoke-rc.d: initscript unifi, action "start" failed.
● unifi.service - unifi
   Memory: 123.4M
      CPU: 50.849s
   CGroup: /system.slice/unifi.service
           ├─27510 unifi -cwd /usr/lib/unifi -home /usr/lib/jvm/java-8-openjdk-armhf -cp /usr/share/java/commons-daemon.jar:/usr/lib/unifi/lib/ace.jar -pid…rt
           ├─27511 unifi -cwd /usr/lib/unifi -home /usr/lib/jvm/java-8-openjdk-armhf -cp /usr/share/java/commons-daemon.jar:/usr/lib/unifi/lib/ace.jar -pid…rt
           ├─27512 unifi -cwd /usr/lib/unifi -home /usr/lib/jvm/java-8-openjdk-armhf -cp /usr/share/java/commons-daemon.jar:/usr/lib/unifi/lib/ace.jar -pid…rt
           ├─27546 /usr/lib/jvm/java-8-openjdk-armhf/jre/bin/java -Dfile.encoding=UTF-8 -Djava.awt.headless=true -Dapple.awt.UIElement=true -Xmx1024M -XX:+…rt
           └─27586 curl -s --connect-timeout 1 -o /dev/null -w %{http_code} http://localhost:8080/status

Feb 19 01:40:12 OrangePi systemd[1]: unifi.service: Unit entered failed state.
Feb 19 01:40:12 OrangePi systemd[1]: unifi.service: Failed with result 'timeout'.
Processing triggers for systemd (232-25+deb9u12) ...
[root@OrangePi:mongodb]$

 

Link to post
Share on other sites

thank you for the tip you gave me about the docker container.
I have successfully run the controller through Docker and it works perfectly.
The best thing about the Docker solution, I can quickly delete or renew the "installation".

 

docks@OrangePi:/opt/docker$ docker ps
CONTAINER ID        IMAGE                          COMMAND             CREATED             STATUS              PORTS                                                                                                                                                                                NAMES
dc14b6ce9fa3        linuxserver/unifi-controller   "/init"             20 minutes ago      Up 3 minutes        0.0.0.0:6789->6789/tcp, 0.0.0.0:8080->8080/tcp, 0.0.0.0:8443->8443/tcp, 0.0.0.0:8843->8843/tcp, 0.0.0.0:3478->3478/udp, 0.0.0.0:10001->10001/udp, 0.0.0.0:8880->8880/tcp, 8081/tcp   unifi
docks@OrangePi:/opt/docker$

 

Link to post
Share on other sites

I am getting this error with running the docker image, not sure why

 

root@orangepipc:~# docker create \
> --name=unifi-controller \
> -e PUID=1000 \
> -e PGID=1000 \
> -e MEM_LIMIT=1024M `#optional` \
> -p 3478:3478/udp \
> -p 10001:10001/udp \
> -p 8080:8080 \
> -p 8081:8081 \
> -p 8443:8443 \
> -p 8843:8843 \
> -p 8880:8880 \
> -p 6789:6789 \
> -v path to data:/config \
> --restart unless-stopped \
> linuxserver/unifi-controller
Unable to find image 'to:latest' locally
Error response from daemon: pull access denied for to, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
 

Link to post
Share on other sites

On 2/19/2020 at 9:58 AM, TDCroPower said:

thank you for the tip you gave me about the docker container.
I have successfully run the controller through Docker and it works perfectly.
The best thing about the Docker solution, I can quickly delete or renew the "installation".

 


docks@OrangePi:/opt/docker$ docker ps
CONTAINER ID        IMAGE                          COMMAND             CREATED             STATUS              PORTS                                                                                                                                                                                NAMES
dc14b6ce9fa3        linuxserver/unifi-controller   "/init"             20 minutes ago      Up 3 minutes        0.0.0.0:6789->6789/tcp, 0.0.0.0:8080->8080/tcp, 0.0.0.0:8443->8443/tcp, 0.0.0.0:8843->8843/tcp, 0.0.0.0:3478->3478/udp, 0.0.0.0:10001->10001/udp, 0.0.0.0:8880->8880/tcp, 8081/tcp   unifi
docks@OrangePi:/opt/docker$

 

That's great news! Can you please assist me as well by letting me know the exact steps you took?

Link to post
Share on other sites

On 2/19/2020 at 9:58 AM, TDCroPower said:

thank you for the tip you gave me about the docker container.
I have successfully run the controller through Docker and it works perfectly.
The best thing about the Docker solution, I can quickly delete or renew the "installation".

 

docks@OrangePi:/opt/docker$ docker ps
CONTAINER ID        IMAGE                          COMMAND             CREATED             STATUS              PORTS                                                                                                                                                                                NAMES
dc14b6ce9fa3        linuxserver/unifi-controller   "/init"             20 minutes ago      Up 3 minutes        0.0.0.0:6789->6789/tcp, 0.0.0.0:8080->8080/tcp, 0.0.0.0:8443->8443/tcp, 0.0.0.0:8843->8843/tcp, 0.0.0.0:3478->3478/udp, 0.0.0.0:10001->10001/udp, 0.0.0.0:8880->8880/tcp, 8081/tcp   unifi
docks@OrangePi:/opt/docker$

 

 

Please some help how did you run the controller through Docker? I'm a begginer with linux

 

Link to post
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

0