Docker Install issue: bc-server respawning over & over

Installed the docker version of BC3 and the docker container for bc-server keeps crashing. I am unable to connect via http:\{server}:7001

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e572d69bf437 bluecherrydvr/bluecherry:latest “/bin/sh -c "/entryp…” 27 minutes ago Restarting (1) 45 seconds ago

bluecherry.log from container:
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 15:21:38 7571067cf5f9 bc-server[17]: E(): Could not open database after 30 tries, aborting
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): API server started listen to port: 7005
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): SQL database connection opened
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Database doesnot contain oldest media file entry
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): v3license server started
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): SQL database connection opened
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Database doesnot contain oldest media file entry
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): v3license server started

syslog:
Jul 8 15:21:40 7571067cf5f9 rsyslogd: warning: ~ action is deprecated, consider using the ‘stop’ statement instead [v8.2001.0 try htps://www.rsyslog.com/e/2307 ]
Jul 8 15:21:40 7571067cf5f9 rsyslogd: rsyslogd’s groupid changed to 107
Jul 8 15:21:40 7571067cf5f9 rsyslogd: rsyslogd’s userid changed to 105
Jul 8 15:21:40 7571067cf5f9 rsyslogd: [origin software=“rsyslogd” swVersion=“8.2001.0” x-pid=“10” x-info=“htps://www.rsyslog.com”] start
Jul 8 21:16:44 1a0631174807 rsyslogd: warning: ~ action is deprecated, consider using the ‘stop’ statement instead [v8.2001.0 try htps://www.rsyslog.com/e/2307 ]
Jul 8 21:16:44 1a0631174807 rsyslogd: rsyslogd’s groupid changed to 107
Jul 8 21:16:44 1a0631174807 rsyslogd: rsyslogd’s userid changed to 105
Jul 8 21:16:44 1a0631174807 rsyslogd: [origin software=“rsyslogd” swVersion=“8.2001.0” x-pid=“10” x-info=“htps://www.rsyslog.com”] start
Jul 8 21:17:21 1a0631174807 rsyslogd: warning: ~ action is deprecated, consider using the ‘stop’ statement instead [v8.2001.0 try htps://www.rsyslog.com/e/2307 ]
Jul 8 21:17:21 1a0631174807 rsyslogd: rsyslogd’s groupid changed to 107
Jul 8 21:17:21 1a0631174807 rsyslogd: rsyslogd’s userid changed to 105
Jul 8 21:17:21 1a0631174807 rsyslogd: [origin software=“rsyslogd” swVersion=“8.2001.0” x-pid=“10” x-info=“htps://www.rsyslog.com”] start

bootstrap.log
Setting up adduser (3.118ubuntu2) …
Setting up libffi7:amd64 (3.3-4) …
Setting up libunistring2:amd64 (0.9.10-2) …
Setting up libidn2-0:amd64 (2.2.0-2) …
Setting up bzip2 (1.0.8-2) …
Setting up ubuntu-keyring (2020.02.11.2) …
Setting up libseccomp2:amd64 (2.4.3-1ubuntu1) …
Setting up libgmp10:amd64 (2:6.2.0+dfsg-4) …
Setting up libp11-kit0:amd64 (0.23.20-1build1) …
Setting up libnettle7:amd64 (3.5.1+really3.5.1-2) …
Setting up gpgv (2.2.19-3ubuntu2) …
Setting up libtasn1-6:amd64 (4.16.0-2) …
Setting up libstdc++6:amd64 (10-20200411-0ubuntu1) …
Setting up libhogweed5:amd64 (3.5.1+really3.5.1-2) …
Setting up libgnutls30:amd64 (3.6.13-2ubuntu1) …
Setting up libapt-pkg6.0:amd64 (2.0.2) …
Setting up apt (2.0.2) …
Processing triggers for libc-bin (2.31-0ubuntu9) …

The other containers: bc-mysql, bc-mail, uptime-kuma are all stable:
aa80d088bb47 louislam/uptime-kuma:latest “/usr/bin/dumb-init …” 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:1337->3001/tcp, :::1337->3001/tcp uptime-kuma
4b3e8a3a8fa8 juanluisbaptiste/postfix:latest “/run.sh” 5 minutes ago Up 5 minutes 0.0.0.0:25->25/tcp, :::25->25/tcp bc-mail
6421889ff627 mysql:latest “docker-entrypoint.s…” 5 minutes ago Up 5 minutes 3306/tcp, 33060/tcp bc-mysql

I tried removing all of the docker containers & reinstalling with same result. Used default settings. “NO” to smtp & “NO” to NFS.

Looks like the MySQL password is incorrect. Did you use any special characters in the password?

No. I think the issue is that bc-server doesnot have access to mysql (ports). I don’t see the ports exposed on the host machine ie “netstat -an | grep 3306” comes up empty. if I open a shell to bc-mysql I can login to the server using the password and even access the bluecherry db. I see an account for admin:

| 1 | Admin | e22dec1d6cfa580962f3a3796a5dc6a3 | 1234 | Bluecherry Admin | NULL | NULL | NULL

Docker ps:
1fb55890f447 louislam/uptime-kuma:latest “/usr/bin/dumb-init …” 7 minutes ago Up 7 minutes (healthy) 0.0.0.0:1337->3001/tcp, :::1337->3001/tcp uptime-kuma
91fee7963314 mysql:latest “docker-entrypoint.s…” 7 minutes ago Up 7 minutes 3306/tcp, 33060/tcp bc-mysql

Looks like for the other docker containers the ports are exposed on the host, but bc-mysql isn’t. is this the problem?

Thanks for your help!

Strange. I just did a clean install on a Fedora droplet I spun on up DigitalOcean and I can’t reproduce this:

[root@centos-s-2vcpu-4gb-amd-sfo3-01 bluecherry-docker]# docker exec -it bc-server /bin/bash
root@99378f711411:~# tail -f /var/log/bluecherry.log 
Jul  8 21:16:43 1a0631174807 bc-server[17]: I(): Database doesnot contain oldest media file entry
Jul  8 21:16:43 1a0631174807 bc-server[17]: I(): v3license server started
Jul  8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_status
Jul  8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul  8 21:17:20 1a0631174807 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master

Can I get remote (ssh) access to this server?

Not accessible via internet unfortunately. What version of Docker are you using?

Here is my version info:
Client:
Version: 24.0.5
API version: 1.43
Go version: go1.20.6
Git commit: ced0996600
Built: Wed Jul 26 21:44:58 2023
OS/Arch: linux/amd64
Context: default

Server:
Engine:
Version: 24.0.5
API version: 1.43 (minimum version 1.12)
Go version: go1.20.6
Git commit: a61e2b4c9c
Built: Wed Jul 26 21:44:58 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.7.2
GitCommit: 0cae528dd6cb557f7201036e9f43420650207b58.m
runc:
Version: 1.1.8
GitCommit:
docker-init:
Version: 0.19.0
GitCommit: de40ad0

Also I had to modify the install.sh file to use “docker-compose” instead of “docker compose” to get the script to run.

docker-compose pull
docker-compose up bc-mysql -d

I think if I make the change to “docker-compose.yml”

bc-mysql:
image: mysql:latest
container_name: bc-mysql
command: --default-authentication-plugin=mysql_native_password
restart: always
networks:
- bluecherry_net
ports:
- “3306:3306/tcp”
- “33060:33060/tcp”

it would work, but I cannot get the command:
docker-compose run bluecherry bc-database-create

to run:
dbname=bluecherry

  • echo ‘Testing whether database already exists…’
    Testing whether database already exists…

  • echo ‘show databases’

  • mysql_wrapper -hbc-mysql -uroot -Dbluecherry

  • echo -e ‘\n\n\tDatabase ‘'‘bluecherry’'’ already exists, but /etc/bluecherry.conf is not found.’

      Database 'bluecherry' already exists, but /etc/bluecherry.conf is not found.
    
  • echo -e ‘\tAborting installation. In order to proceed installation, please do one of following things:\n’ ‘\t * Restore /etc/bluecherry.conf config file if it was removed, template is in /usr/share/bluecherry/bluecherry.conf.in;\n’
    Aborting installation. In order to proceed installation, please do one of following things:
    * Restore /etc/bluecherry.conf config file if it was removed, template is in /usr/share/bluecherry/bluecherry.conf.in;

  • [[ -n IN_DEB ]]

  • echo -e ‘\t * Accomplish removal of previous setup by ‘'‘apt-get remove --purge bluecherry’'’;\n’
    * Accomplish removal of previous setup by ‘apt-get remove --purge bluecherry’;

  • echo -e ‘\t * Remove the database ‘'‘bluecherry’'’ manually.\n\n’
    * Remove the database ‘bluecherry’ manually.

  • exit 1

I removed bc-mysql from docker, then ran:

docker-compose pull
docker-compose up bc-mysql -d
echo “Sleeping 45 seconds to make sure the database is initialized correctly…”
echo “\n\n”
sleep 45
docker-compose stop bc-mysql
docker-compose up -d bc-mysql

echo “Sleeping another 15 seconds to run the database creation scripts…”
echo “\n\n”

sleep 15
docker-compose run bluecherry bc-database-create

Thats when I get stuck with the above error.

Thanks & Sorry for the trouble.

Which distribution are you using? Most modern distributions should support Docker compose v2 (ie ‘docker compose’)

I am using ArchLinux: has Docker-compose version:
Docker Compose version 2.20.2 (2023-07-19)

Which is the lastest version available.

okay…let me do some testing on ArchLinux and docker-compose (v1) and I’ll let you know

Hold on, I thought I was using version V2. let me see if I can figure this out.

Can you run:

pacman -S docker-compose

I did run the pacman -Sy docker. I was able to get the install script running with “docker compose”, I restarted the Docker service & that make have fixed the issue with docker-compose vs “docker compose”.
I removed all docker containers, and re-ran the bluecherry install script which completed, but bc-server still keeps on crashing.

from the bluecherry container

docker exec -it bc-server bash
root@3ca7cceb4647:~# mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.1.0 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql>

mysql> show tables
→ ;
±----------------------+
| Tables_in_bluecherry |
±----------------------+
| ActiveUsers |
| AvailableSources |
| Devices |
| EventComments |
| EventLevels |
| EventTags |
| EventTypesCam |
| EventTypesSys |
| EventsCam |
| EventsSystem |
| GlobalSettings |
| HlsAuthTokens |
| Licenses |
| Media |
| OnvifEvents |
| PTZPresets |
| RtspAuthTokens |
| ServerStatus |
| Storage |
| TagNames |
| Users |
| ipPtzCommandPresets |
| notificationSchedules |
| notificationsSent |
| userLayouts |
| webhooks |
±----------------------+
26 rows in set (0.01 sec)

So it seems to able to connect to the bc-mysql, so I don’t think its a issue accessing mysql. When you mentioned that you taught it was unable to access the mysql DB, I ran down a rabbit hole thinking there was no comm. between bc-server & bc-mysql.

the password used is ‘mypassword’ no funk characters just all lower case.

/var/log/bluecherry.log from bc-server:
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 15:21:08 7571067cf5f9 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 15:21:38 7571067cf5f9 bc-server[17]: E(): Could not open database after 30 tries, aborting
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): API server started listen to port: 7005
Jul 8 15:21:39 7571067cf5f9 bc-server[16]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): SQL database connection opened
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): Database doesnot contain oldest media file entry
Jul 8 21:16:43 1a0631174807 bc-server[17]: I(): v3license server started
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_status
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Status reports are served at /tmp/bluecherry_trigger
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Started bc-server 3.1.0 (toolchain 9.4.0) v2.7.6-733-g6e6e1d92 heads/master
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): API server started listen to port: 7005
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): HLS server started listen to port: 7003 (SSL=0)
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): SQL database connection opened
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): Database doesnot contain oldest media file entry
Jul 8 21:17:20 1a0631174807 bc-server[17]: I(): v3license server started

I am going to start over from scratch: remove all containers, and re-run the install script. I’ll post the entire install script output in a new reply

Here is the complete install output:

[root@arch1 ~]# ./bluecherry.sh
Do you want to install docker and setup Bluecherry server? [y/n]: y

Docker is installed…skipping!

Installing Bluecherry…

:: Synchronizing package databases…
core is up to date
extra is up to date
warning: git-2.41.0-2 is up to date – reinstalling
:: Starting full system upgrade…
resolving dependencies…
looking for conflicting packages…

Packages (1) git-2.41.0-2

Total Installed Size: 25.81 MiB
Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [####################################################] 100%
(1/1) checking package integrity [####################################################] 100%
(1/1) loading package files [####################################################] 100%
(1/1) checking for file conflicts [####################################################] 100%
(1/1) checking available disk space [####################################################] 100%
:: Processing package changes…
(1/1) reinstalling git [####################################################] 100%
:: Running post-transaction hooks…
(1/3) Creating system user accounts…
(2/3) Reloading system manager configuration…
(3/3) Arming ConditionNeedsUpdate…

Docker is installed…skipping!

Do you want to download and configure the Bluecherry docker images? If this is the first run of the script then select ‘y’ [y/n]: y
Directory /bluecherry-docker…proceeding with cloning
Cloning into ‘bluecherry-docker’…
remote: Enumerating objects: 1453, done.
remote: Counting objects: 100% (859/859), done.
remote: Compressing objects: 100% (434/434), done.
remote: Total 1453 (delta 608), reused 595 (delta 360), pack-reused 594
Receiving objects: 100% (1453/1453), 2.05 MiB | 1.84 MiB/s, done.
Resolving deltas: 100% (749/749), done.
\n\n******************************************************************\n\n
You will be asked the following to configure the docker container:

Time Zone (formatted like this - See List of tz database time zones - Wikipedia)
Create a password for the mysql admin
Create a password for the mysql bluecherry user

Time Zone (i.e. - America/Chicago):

Please provide a mysql admin password:mypassword
Please provide a mysql bluecherry password:mypassword
\n\nDownloading latest Bluecherry and related images…this may take a while…\n\n
[+] Pulling 4/4
:heavy_check_mark: bc-mysql Pulled 0.4s
:heavy_check_mark: bluecherry Pulled 0.5s
:heavy_check_mark: mta_mailer Pulled 0.5s
:heavy_check_mark: uptime-kuma Pulled 0.5s
[+] Running 1/1
:heavy_check_mark: Container bc-mysql Started 0.5s
Sleeping 45 seconds to make sure the database is initialized correctly…
\n\n
[+] Stopping 1/1
:heavy_check_mark: Container bc-mysql Stopped 0.9s
[+] Running 1/1
:heavy_check_mark: Container bc-mysql Started 0.3s
Sleeping another 15 seconds to run the database creation scripts…
\n\n
[+] Creating 1/0
:heavy_check_mark: Container bc-mysql Running 0.0s
++ cat /etc/os-release
++ grep ‘^ID=’
++ grep centos

  • [[ -n ‘’ ]]
  • IN_DEB=1
  • MODE=new_db
  • case “$MODE” in
  • [[ 8 -lt 6 ]]
  • new_db root mypassword bluecherry bluecherry mypassword bc-mysql %
  • echo new_db root mypassword bluecherry bluecherry mypassword bc-mysql %
    new_db root mypassword bluecherry bluecherry mypassword bc-mysql %
  • MYSQL_ADMIN_LOGIN=root
  • MYSQL_ADMIN_PASSWORD=mypassword
  • dbname=bluecherry
  • user=bluecherry
  • password=mypassword
  • host=bc-mysql
  • userhost=%
  • check_mysql_admin root mypassword
  • MYSQL_ADMIN_LOGIN=root
  • MYSQL_ADMIN_PASSWORD=mypassword
  • echo ‘Testing MySQL admin credentials correctness…’
    Testing MySQL admin credentials correctness…
  • echo ‘show databases’
  • mysql_wrapper -hbc-mysql -uroot
  • check_db_exists root mypassword bc-mysql bluecherry
  • MYSQL_ADMIN_LOGIN=root
  • MYSQL_ADMIN_PASSWORD=mypassword
  • dbhost=bc-mysql
  • dbname=bluecherry
  • echo ‘Testing whether database already exists…’
    Testing whether database already exists…
  • echo ‘show databases’
  • mysql_wrapper -hbc-mysql -uroot -Dbluecherry
  • create_db root mypassword bc-mysql bluecherry bluecherry mypassword %
  • MYSQL_ADMIN_LOGIN=root
  • MYSQL_ADMIN_PASSWORD=mypassword
  • dbhost=bc-mysql
  • dbname=bluecherry
  • user=bluecherry
  • password=mypassword
  • userhost=%
  • [[ -n mypassword ]]
  • mysql -hbc-mysql -uroot --password=mypassword
  • echo ‘DROP DATABASE IF EXISTS bluecherry; CREATE DATABASE bluecherry’
    mysql: [Warning] Using a password on the command line interface can be insecure.
  • echo ‘CREATE USER bluecherry@’'‘%’'’ IDENTIFIED BY ‘'‘mypassword’'’’
  • mysql -hbc-mysql -uroot --password=mypassword
    mysql: [Warning] Using a password on the command line interface can be insecure.
  • echo ‘GRANT ALL ON bluecherry.* to bluecherry@’'‘%’'‘’
  • mysql -hbc-mysql -uroot --password=mypassword
    mysql: [Warning] Using a password on the command line interface can be insecure.
  • mysql -hbc-mysql -ubluecherry --password=mypassword -Dbluecherry
    mysql: [Warning] Using a password on the command line interface can be insecure.
    ++ cat /usr/share/bluecherry/installed_db_version
  • DB_VERSION=3000010
  • echo ‘INSERT INTO GlobalSettings (parameter, value) VALUES (’'‘G_DB_VERSION’'‘, ‘'‘3000010’'’)’
  • mysql -hbc-mysql -ubluecherry --password=mypassword -Dbluecherry
    mysql: [Warning] Using a password on the command line interface can be insecure.
  • mysql -hbc-mysql -ubluecherry --password=mypassword -Dbluecherry
    mysql: [Warning] Using a password on the command line interface can be insecure.
  • exit 0
    [+] Running 2/2
    :heavy_check_mark: Container bc-mysql Removed 1.5s
    :heavy_check_mark: Network bluecherry_net Removed 0.1s
    [+] Running 5/5
    :heavy_check_mark: Network bluecherry_net Created 0.0s
    :heavy_check_mark: Container uptime-kuma Started 0.5s
    :heavy_check_mark: Container bc-mysql Started 0.6s
    :heavy_check_mark: Container bc-mail Started 0.6s
    :heavy_check_mark: Container bc-server Started 0.9s
    Do you want to configure SMTP settings?? [y/n]: n

Note: NFS is typically recommended for external storage. Read the Bluecherry docs for information on adding CIFS (smb) shares

Do you want to add a NFS mount? [y/n]: n


Installation finished, you can access the Bluecherry server here below
The default login is Admin and the default password is bluecherry

http[s]://192.168.8.118:7001


[root@arch1 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ac7691c7c0aa bluecherrydvr/bluecherry:latest “/bin/sh -c "/entryp…” 2 minutes ago Up 55 seconds 0.0.0.0:554->554/tcp, :::554->554/tcp, 0.0.0.0:7001-7002->7001-7002/tcp, 0.0.0.0:554->554/udp, :::7001-7002->7001-7002/tcp, :::554->554/udp bc-server
5958b99331cd mysql:latest “docker-entrypoint.s…” 2 minutes ago Up 2 minutes 3306/tcp, 33060/tcp bc-mysql
7a13d503ec45 louislam/uptime-kuma:latest “/usr/bin/dumb-init …” 2 minutes ago Up 2 minutes (healthy) 0.0.0.0:1337->3001/tcp, :::1337->3001/tcp uptime-kuma
14cb7d24af8f juanluisbaptiste/postfix:latest “/run.sh” 2 minutes ago Up 2 minutes 0.0.0.0:25->25/tcp, :::25->25/tcp bc-mail
[root@arch1 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ac7691c7c0aa bluecherrydvr/bluecherry:latest “/bin/sh -c "/entryp…” 5 minutes ago Restarting (1) Less than a second ago bc-server
5958b99331cd mysql:latest “docker-entrypoint.s…” 5 minutes ago Up 5 minutes 3306/tcp, 33060/tcp bc-mysql
7a13d503ec45 louislam/uptime-kuma:latest “/usr/bin/dumb-init …” 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:1337->3001/tcp, :::1337->3001/tcp uptime-kuma
14cb7d24af8f juanluisbaptiste/postfix:latest “/run.sh” 5 minutes ago Up 5 minutes 0.0.0.0:25->25/tcp, :::25->25/tcp bc-mail

If you run ‘docker compose logs |grep bc-server’ do you see rsyslog errors?

Yes:

If you want to run multiple instances of rsyslog, you need to specify
bc-server | different pid files for them (-i option).
bc-server | rsyslogd: run failed with error -3000 (see rsyslog.h or try You searched for error 3000 - rsyslog to learn what that number means)
bc-server | > Update MySQL’s my.cnf from environment variables passed in from docker
bc-server | > Writing /root/.my.cnf
bc-server | > Update bluecherry server’s bluecherry.conf from environment variables passed in from docker
bc-server | > Writing /etc/bluecherry.conf
bc-server | > chown bluecherry:bluecherry /var/lib/bluecherry/recordings
bc-server | > /usr/sbin/rsyslogd
bc-server | rsyslog startup failure, child did not respond within startup timeout (60 seconds)
bc-server | > Update MySQL’s my.cnf from environment variables passed in from docker
bc-server | > Writing /root/.my.cnf
bc-server | > Update bluecherry server’s bluecherry.conf from environment variables passed in from docker
bc-server | > Writing /etc/bluecherry.conf
bc-server | > chown bluecherry:bluecherry /var/lib/bluecherry/recordings
bc-server | > /usr/sbin/rsyslogd

These are the processes running on bc-server:
PID TTY STAT TIME COMMAND
1 ? Ss 0:00 /bin/sh -c “/entrypoint.sh”
8 ? S 0:00 /bin/bash /entrypoint.sh
11 ? S 0:00 /usr/sbin/rsyslogd
12 ? Rs 0:08 /usr/sbin/rsyslogd
13 pts/0 Ss 0:00 bash
21 pts/0 R+ 0:00 ps -ax

I see the problem regarding rsyslog…two processes are being started. I’m working on figuring that out now.

For the first problem…I did a clean install on arch linux and tested again and it worked fine. The docker containers or network might be cached. If there aren’t any other docker containers running on that system you can do:

cd bluecherry-docker
docker compose rm -f
docker system prune -a
cd …/
rm -rf bluecherry-docker

then do the install again

Try checking editing docker-compose.yml line 19 and change from bluecherry:latest to bluecherry:citesting

Then run docker compose pull and docker compose up -d

If you get it working and you notice rsyslogd taking 100% CPU try this on the arch linux host:

mkdir -p /etc/systemd/system/docker.service.d/
mkdir -p /etc/systemd/system/containerd.service.d/

echo "[Service]
LimitNOFILE=1048576" > /etc/systemd/system/docker.service.d/override.conf

echo "[Service]
LimitNOFILE=1048576" > /etc/systemd/system/containerd.service.d/override.conf

Then restart the host and see if the cpu usage goes down

I got to start by changing /usr/sbin/rsyslogd to /usr/sbin/rsyslogd -n
then I manually ran the other script commands to start nginx, php & bluecherry and it started.

I’ll try the test version you listed.

citesting does not start php & bluecherry services:

root@ca7a09b4ff9f:~# ps -ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:00 nginx: master process nginx -g daemon off;
7 ? S 0:00 nginx: worker process
8 ? S 0:00 nginx: worker process
9 pts/0 Ss 0:00 bash
17 pts/0 R+ 0:00 ps -ax

I tried starting php & bluecherry manually but only php remains running:

root@ca7a09b4ff9f:~# php-fpm7.4 --daemonize
root@ca7a09b4ff9f:~# /usr/sbin/bc-server -u bluecherry -g bluecherry
root@ca7a09b4ff9f:~# ps -ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:00 nginx: master process nginx -g daemon off;
7 ? S 0:00 nginx: worker process
8 ? S 0:00 nginx: worker process
9 pts/0 Ss 0:00 bash
19 ? Ss 0:00 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
20 ? S 0:00 php-fpm: pool www
21 ? S 0:00 php-fpm: pool www
23 pts/0 R+ 0:00 ps -ax
root@ca7a09b4ff9f:~# /usr/sbin/bc-server -u bluecherry -g bluecherry
root@ca7a09b4ff9f:~# ps -ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:00 nginx: master process nginx -g daemon off;
7 ? S 0:00 nginx: worker process
8 ? S 0:00 nginx: worker process
9 pts/0 Ss 0:00 bash
19 ? Ss 0:00 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
20 ? S 0:00 php-fpm: pool www
21 ? S 0:00 php-fpm: pool www
25 pts/0 R+ 0:00 ps -ax
root@ca7a09b4ff9f:~#

bluecherry log is empty:

root@ca7a09b4ff9f:/var/log# tail bluecherry.log
root@ca7a09b4ff9f:/var/log#

syslog:
root@ca7a09b4ff9f:/var/log# tail syslog -n 100
Aug 4 02:42:19 localhost rsyslogd: warning: ~ action is deprecated, consider using the ‘stop’ statement instead [v8.2001.0 try http[s]://www.rsyslog.com/e/2307 ]
Aug 4 02:42:19 localhost rsyslogd: imklog: cannot open kernel log (/proc/kmsg): Operation not permitted.
Aug 4 02:42:19 localhost rsyslogd: activation of module imklog failed [v8.2001.0 try http[s]://www.rsyslog.com/e/2145 ]
Aug 4 02:42:19 localhost rsyslogd: rsyslogd’s groupid changed to 102
Aug 4 02:42:19 localhost rsyslogd: rsyslogd’s userid changed to 101
Aug 4 02:42:19 localhost rsyslogd: [origin software=“rsyslogd” swVersion=“8.2001.0” x-pid=“11743” x-info=“https://www.rsyslog.com”] start
Aug 4 02:42:38 localhost crontab[11831]: (root) LIST (root)
Aug 4 02:42:38 localhost crontab[11833]: (root) REPLACE (root)

I noticed rsyslogd is no longer running either

also php & eginx is missing from entrypoint.sh i see exec “$@” but I am not sure what that is. with all the variables its making it difficult to read to provide you feedback.

Can you include nano in the next package update, I tried apt-get install nano but it fails. the last bc-server container, included nano.

I included nano, however I think I see the problem and it is arch specific. Let me do some testing and I’ll let you know