HumHub - social network software
-
@atridad no worries at all good sir- trying again with your new update! (did not restart, but I can see how that would happen)
-
here's the full log (minus most of the image extraction) - no restarts:
Apr 28 12:22:26 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":89686016,"total":90317750},"progress":"[=================================================> ] 89.69MB/90.32MB","id":"3d2b1d633598"}
Apr 28 12:22:26 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":90317750,"total":90317750},"progress":"[==================================================>] 90.32MB/90.32MB","id":"3d2b1d633598"}
Apr 28 12:22:26 box:docker pullImage: {"status":"Pull complete","progressDetail":{},"id":"3d2b1d633598"}
Apr 28 12:22:26 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":914,"total":914},"progress":"[==================================================>] 914B/914B","id":"facbe38d66d8"}
Apr 28 12:22:26 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":914,"total":914},"progress":"[==================================================>] 914B/914B","id":"facbe38d66d8"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Pull complete","progressDetail":{},"id":"facbe38d66d8"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":699,"total":699},"progress":"[==================================================>] 699B/699B","id":"5979f7f0567d"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":699,"total":699},"progress":"[==================================================>] 699B/699B","id":"5979f7f0567d"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Pull complete","progressDetail":{},"id":"5979f7f0567d"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":790,"total":790},"progress":"[==================================================>] 790B/790B","id":"1bb346ffa0fa"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Extracting","progressDetail":{"current":790,"total":790},"progress":"[==================================================>] 790B/790B","id":"1bb346ffa0fa"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Pull complete","progressDetail":{},"id":"1bb346ffa0fa"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Digest: sha256:25279937749d0af43eb275664fe64d68acc76f6b3fd37a0f08827de877fbaf84"}
Apr 28 12:22:27 box:docker pullImage: {"status":"Status: Downloaded newer image for registry.apps.thedoodleproject.net/humhub:20220428-191611-5678ae9a4"}
Apr 28 12:22:27 box:docker downloaded image registry.apps.thedoodleproject.net/humhub:20220428-191611-5678ae9a4
Apr 28 12:22:27 box:tasks update 5863: {"percent":50,"message":"Creating app data directory"}
Apr 28 12:22:27 box:tasks update 5863: {"percent":60,"message":"Setting up addons"}
Apr 28 12:22:27 box:services setupAddons: Setting up ["mysql","localstorage","sendmail","ldap","scheduler"]
Apr 28 12:22:27 box:services setupAddons: setting up addon mysql with options {}
Apr 28 12:22:27 box:services Setting up mysql
Apr 28 12:22:27 box:services Setting mysql addon config to [{"name":"CLOUDRON_MYSQL_USERNAME","value":"861d26e19014f5b3"},{"name":"CLOUDRON_MYSQL_PASSWORD","value":"c7c9cf3a3916bd11dadd2592f674fae373da5cd1be5d72b5"},{"name":"CLOUDRON_MYSQL_HOST","value":"mysql"},{"name":"CLOUDRON_MYSQL_PORT","value":"3306"},{"name":"CLOUDRON_MYSQL_URL","value":"mysql://861d26e19014f5b3:c7c9cf3a3916bd11dadd2592f674fae373da5cd1be5d72b5@mysql/861d26e19014f5b3"},{"name":"CLOUDRON_MYSQL_DATABASE","value":"861d26e19014f5b3"}]
Apr 28 12:22:27 box:services setupAddons: setting up addon localstorage with options {"ftp":{"uid":33,"uname":"www-data"}}
Apr 28 12:22:27 box:services setupLocalStorage
Apr 28 12:22:27 box:shell createVolume spawn: /usr/bin/sudo -S /home/yellowtent/box/src/scripts/mkdirvolume.sh /home/yellowtent/appsdata/a82a3f73-544a-4d2a-a919-f5568f553257/data
Apr 28 12:22:27 box:services setupAddons: setting up addon sendmail with options {}
Apr 28 12:22:27 box:services Setting up SendMail
Apr 28 12:22:27 box:services Setting sendmail addon config to [{"name":"CLOUDRON_MAIL_SMTP_SERVER","value":"mail"},{"name":"CLOUDRON_MAIL_SMTP_PORT","value":"2525"},{"name":"CLOUDRON_MAIL_SMTPS_PORT","value":"2465"},{"name":"CLOUDRON_MAIL_STARTTLS_PORT","value":"2587"},{"name":"CLOUDRON_MAIL_SMTP_USERNAME","value":"humhub.app@apps.thedoodleproject.net"},{"name":"CLOUDRON_MAIL_SMTP_PASSWORD","value":"7f02e2cd8d8b5343ab10442ef21f9b9835e9233a6280fe6a"},{"name":"CLOUDRON_MAIL_FROM","value":"humhub.app@apps.thedoodleproject.net"},{"name":"CLOUDRON_MAIL_DOMAIN","value":"apps.thedoodleproject.net"}]
Apr 28 12:22:27 box:services setupAddons: setting up addon ldap with options {}
Apr 28 12:22:27 box:services Setting up LDAP
Apr 28 12:22:27 box:services setupAddons: setting up addon scheduler with options {"queue":{"schedule":"* * * * ","command":"/usr/bin/php /app/code/protected/yii queue/run --isolate=0"},"cron":{"schedule":" * * * ","command":"/usr/bin/php /app/code/protected/yii cron/run"},"update_db":{"schedule":" * * * *","command":"/app/code/db_update.sh"}}
Apr 28 12:22:27 box:tasks update 5863: {"percent":80,"message":"Creating container"}
Apr 28 12:22:27 box:apptask createContainer: creating container
Apr 28 12:22:28 box:shell addLogrotateConfig spawn: /usr/bin/sudo -S /home/yellowtent/box/src/scripts/configurelogrotate.sh add a82a3f73-544a-4d2a-a919-f5568f553257 /tmp/a82a3f73-544a-4d2a-a919-f5568f553257.logrotate
Apr 28 12:22:28 box:shell addCollectdProfile spawn: /usr/bin/sudo -S /home/yellowtent/box/src/scripts/configurecollectd.sh add a82a3f73-544a-4d2a-a919-f5568f553257
Apr 28 12:22:28 box:shell addCollectdProfile (stdout): Restarting collectd
Apr 28 12:22:28 box:apptask startApp: starting container
Apr 28 12:22:30 box:tasks update 5863: {"percent":85,"message":"Waiting for DNS propagation"}
Apr 28 12:22:30 box:sysinfo/generic getServerIPv4: getting server IP
Apr 28 12:22:31 box:dns/waitfordns waitForDns: waiting for humhub.apps.thedoodleproject.net to be 172.58.107.231 in zone apps.thedoodleproject.net
Apr 28 12:22:31 box:dns/waitfordns waitForDns: nameservers are ["ns3.digitalocean.com","ns2.digitalocean.com","ns1.digitalocean.com"]
Apr 28 12:22:31 box:dns/waitfordns resolveIp: Checking if humhub.apps.thedoodleproject.net has A record at 198.41.222.173
Apr 28 12:22:30 ==> Starting HumHub
Apr 28 12:22:31 2022-04-28 19:22:31,078 CRIT Supervisor is running as root. Privileges were not dropped because no user is specified in the config file. If you intend to run as root, you can set user=root in the config file to avoid this message.
Apr 28 12:22:31 2022-04-28 19:22:31,078 INFO Included extra file "/etc/supervisor/conf.d/apache2.conf" during parsing
Apr 28 12:22:31 2022-04-28 19:22:31,088 INFO RPC interface 'supervisor' initialized
Apr 28 12:22:31 2022-04-28 19:22:31,088 CRIT Server 'unix_http_server' running without any HTTP authentication checking
Apr 28 12:22:31 2022-04-28 19:22:31,088 INFO supervisord started with pid 1
Apr 28 12:22:31 box:dns/waitfordns isChangeSynced: humhub.apps.thedoodleproject.net (A) was resolved to 172.58.107.231 at NS ns3.digitalocean.com (198.41.222.173). Expecting 172.58.107.231. Match true
Apr 28 12:22:31 box:dns/waitfordns waitForDns: humhub.apps.thedoodleproject.net at ns ns3.digitalocean.com: done
Apr 28 12:22:31 box:dns/waitfordns resolveIp: Checking if humhub.apps.thedoodleproject.net has A record at 173.245.59.41
Apr 28 12:22:31 box:dns/waitfordns isChangeSynced: humhub.apps.thedoodleproject.net (A) was resolved to 172.58.107.231 at NS ns2.digitalocean.com (173.245.59.41). Expecting 172.58.107.231. Match true
Apr 28 12:22:31 box:dns/waitfordns waitForDns: humhub.apps.thedoodleproject.net at ns ns2.digitalocean.com: done
Apr 28 12:22:31 box:dns/waitfordns resolveIp: Checking if humhub.apps.thedoodleproject.net has A record at 173.245.58.51
Apr 28 12:22:31 box:dns/waitfordns isChangeSynced: humhub.apps.thedoodleproject.net (A) was resolved to 172.58.107.231 at NS ns1.digitalocean.com (173.245.58.51). Expecting 172.58.107.231. Match true
Apr 28 12:22:31 box:dns/waitfordns waitForDns: humhub.apps.thedoodleproject.net at ns ns1.digitalocean.com: done
Apr 28 12:22:31 box:dns/waitfordns waitForDns: humhub.apps.thedoodleproject.net has propagated
Apr 28 12:22:31 box:tasks update 5863: {"percent":95,"message":"Configuring reverse proxy"}
Apr 28 12:22:31 box:reverseproxy ensureCertificate: humhub.apps.thedoodleproject.net certificate already exists at /home/yellowtent/platformdata/nginx/cert/.apps.thedoodleproject.net.key
Apr 28 12:22:31 box:reverseproxy expiryDate: /home/yellowtent/platformdata/nginx/cert/.apps.thedoodleproject.net.cert notAfter=Jul 2 19:28:38 2022 GMT daysLeft=65.00424060185185
Apr 28 12:22:31 box:reverseproxy providerMatchesSync: /home/yellowtent/platformdata/nginx/cert/.apps.thedoodleproject.net.cert subject=CN = .apps.thedoodleproject.net domain=.apps.thedoodleproject.net issuer=C = US, O = Let's Encrypt, CN = R3 wildcard=true/true prod=true/true issuerMismatch=false wildcardMismatch=false match=true
Apr 28 12:22:31 box:reverseproxy writeAppNginxConfig: writing config for "humhub.apps.thedoodleproject.net" to /home/yellowtent/platformdata/nginx/applications/a82a3f73-544a-4d2a-a919-f5568f553257.conf with options {"sourceDir":"/home/yellowtent/box","vhost":"humhub.apps.thedoodleproject.net","hasIPv6":true,"ip":"172.18.16.52","port":80,"endpoint":"app","redirectTo":null,"certFilePath":"/home/yellowtent/platformdata/nginx/cert/.apps.thedoodleproject.net.cert","keyFilePath":"/home/yellowtent/platformdata/nginx/cert/_.apps.thedoodleproject.net.key","robotsTxtQuoted":null,"cspQuoted":null,"hideHeaders":[],"proxyAuth":{"id":"a82a3f73-544a-4d2a-a919-f5568f553257","location":"/"},"ocsp":true}
Apr 28 12:22:31 box:shell reload spawn: /usr/bin/sudo -S /home/yellowtent/box/src/scripts/restartservice.sh nginx
Apr 28 12:22:32 2022-04-28 19:22:32,093 INFO spawned: 'apache2' with pid 20
Apr 28 12:22:32 box:tasks update 5863: {"percent":100,"message":"Done"}
Apr 28 12:22:32 box:taskworker Task took 145.243 seconds
Apr 28 12:22:32 box:tasks setCompleted - 5863: {"result":null,"error":null}
Apr 28 12:22:32 box:tasks update 5863: {"percent":100,"result":null,"error":null}
Apr 28 12:22:32 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using fd00:c107:d509::25. Set the 'ServerName' directive globally to suppress this message
Apr 28 12:22:32 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using fd00:c107:d509::25. Set the 'ServerName' directive globally to suppress this message
Apr 28 12:22:32 [Thu Apr 28 19:22:32.718804 2022] [mpm_prefork:notice] [pid 21] AH00163: Apache/2.4.41 (Ubuntu) configured -- resuming normal operations
Apr 28 12:22:32 [Thu Apr 28 19:22:32.718962 2022] [core:notice] [pid 21] AH00094: Command line: '/usr/sbin/apache2 -D FOREGROUND'
Apr 28 12:22:33 2022-04-28 19:22:33,720 INFO success: apache2 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Apr 28 12:22:40 - - - [28/Apr/2022:19:22:40 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:22:50 - - - [28/Apr/2022:19:22:50 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:23:00 - - - [28/Apr/2022:19:23:00 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:23:10 - - - [28/Apr/2022:19:23:10 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:23:20 - - - [28/Apr/2022:19:23:20 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:23:20 Exception 'yii\db\Exception' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table '861d26e19014f5b3.queue' doesn't exist
Apr 28 12:23:20 The SQL being executed was: UPDATEqueue
SETreserved_at
=NULL WHEREreserved_at
is not null andreserved_at
< 1651173800 -ttr
anddone_at
is null'
Apr 28 12:23:20 in /app/code/protected/vendor/yiisoft/yii2/db/Schema.php:676
Apr 28 12:23:20 Error Info:
Apr 28 12:23:20 Array
Apr 28 12:23:20 (
Apr 28 12:23:20 [0] => 42S02
Apr 28 12:23:20 [1] => 1146
Apr 28 12:23:20 [2] => Table '861d26e19014f5b3.queue' doesn't exist
Apr 28 12:23:20 )
Apr 28 12:23:20 Caused by: Exception 'PDOException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table '861d26e19014f5b3.queue' doesn't exist'
Apr 28 12:23:20 in /app/code/protected/vendor/yiisoft/yii2/db/Command.php:1302
Apr 28 12:23:20 Stack trace:
Apr 28 12:23:20 #0 /app/code/protected/vendor/yiisoft/yii2/db/Command.php(1302): PDOStatement->execute()
Apr 28 12:23:20 #1 /app/code/protected/vendor/yiisoft/yii2/db/Command.php(1102): yii\db\Command->internalExecute()
Apr 28 12:23:20 #2 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Queue.php(250): yii\db\Command->execute()
Apr 28 12:23:20 #3 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Queue.php(182): yii\queue\db\Queue->moveExpired()
Apr 28 12:23:20 #4 [internal function]: yii\queue\db\Queue->yii\queue\db{closure}()
Apr 28 12:23:20 #5 /app/code/protected/vendor/yiisoft/yii2/db/Connection.php(1129): call_user_func()
Apr 28 12:23:20 #6 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Queue.php(212): yii\db\Connection->useMaster()
Apr 28 12:23:20 #7 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Queue.php(78): yii\queue\db\Queue->reserve()
Apr 28 12:23:20 #8 [internal function]: yii\queue\db\Queue->yii\queue\db{closure}()
Apr 28 12:23:20 #9 /app/code/protected/vendor/yiisoft/yii2-queue/src/cli/Queue.php(117): call_user_func()
Apr 28 12:23:20 #10 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Queue.php(93): yii\queue\cli\Queue->runWorker()
Apr 28 12:23:20 #11 /app/code/protected/vendor/yiisoft/yii2-queue/src/drivers/db/Command.php(56): yii\queue\db\Queue->run()
Apr 28 12:23:20 #12 [internal function]: yii\queue\db\Command->actionRun()
Apr 28 12:23:20 #13 /app/code/protected/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array()
Apr 28 12:23:20 #14 /app/code/protected/vendor/yiisoft/yii2/base/Controller.php(178): yii\base\InlineAction->runWithParams()
Apr 28 12:23:20 #15 /app/code/protected/vendor/yiisoft/yii2/console/Controller.php(182): yii\base\Controller->runAction()
Apr 28 12:23:20 #16 /app/code/protected/vendor/yiisoft/yii2/base/Module.php(552): yii\console\Controller->runAction()
Apr 28 12:23:20 #17 /app/code/protected/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction()
Apr 28 12:23:20 #18 /app/code/protected/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction()
Apr 28 12:23:20 #19 /app/code/protected/vendor/yiisoft/yii2/base/Application.php(384): yii\console\Application->handleRequest()
Apr 28 12:23:20 #20 /app/code/protected/yii(29): yii\base\Application->run()
Apr 28 12:23:20 #21 {main}
Apr 28 12:23:29 Exception 'yii\db\Exception' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table '861d26e19014f5b3.setting' doesn't exist
Apr 28 12:23:29 The SQL being executed was: SELECT * FROMsetting
WHERE (module_id
='base') AND (name
='cronLastHourlyRun')'
Apr 28 12:23:29 in /app/code/protected/vendor/yiisoft/yii2/db/Schema.php:676
Apr 28 12:23:29 Error Info:
Apr 28 12:23:29 Array
Apr 28 12:23:29 (
Apr 28 12:23:29 [0] => 42S02
Apr 28 12:23:29 [1] => 1146
Apr 28 12:23:29 [2] => Table '861d26e19014f5b3.setting' doesn't exist
Apr 28 12:23:29 )
Apr 28 12:23:29 Caused by: Exception 'PDOException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table '861d26e19014f5b3.setting' doesn't exist'
Apr 28 12:23:29 in /app/code/protected/vendor/yiisoft/yii2/db/Command.php:1302
Apr 28 12:23:29 Stack trace:
Apr 28 12:23:29 #0 /app/code/protected/vendor/yiisoft/yii2/db/Command.php(1302): PDOStatement->execute()
Apr 28 12:23:29 #1 /app/code/protected/vendor/yiisoft/yii2/db/Command.php(1168): yii\db\Command->internalExecute()
Apr 28 12:23:29 #2 /app/code/protected/vendor/yiisoft/yii2/db/Command.php(424): yii\db\Command->queryInternal()
Apr 28 12:23:29 #3 /app/code/protected/vendor/yiisoft/yii2/db/Query.php(287): yii\db\Command->queryOne()
Apr 28 12:23:29 #4 /app/code/protected/vendor/yiisoft/yii2/db/ActiveQuery.php(304): yii\db\Query->one()
Apr 28 12:23:29 #5 /app/code/protected/humhub/libs/BaseSettingsManager.php(139): yii\db\ActiveQuery->one()
Apr 28 12:23:29 #6 /app/code/protected/humhub/commands/CronController.php(93): humhub\libs\BaseSettingsManager->getUncached()
Apr 28 12:23:29 #7 /app/code/protected/humhub/commands/CronController.php(54): humhub\commands\CronController->runHourly()
Apr 28 12:23:29 #8 [internal function]: humhub\commands\CronController->actionRun()
Apr 28 12:23:29 #9 /app/code/protected/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array()
Apr 28 12:23:29 #10 /app/code/protected/vendor/yiisoft/yii2/base/Controller.php(178): yii\base\InlineAction->runWithParams()
Apr 28 12:23:29 #11 /app/code/protected/vendor/yiisoft/yii2/console/Controller.php(182): yii\base\Controller->runAction()
Apr 28 12:23:29 #12 /app/code/protected/vendor/yiisoft/yii2/base/Module.php(552): yii\console\Controller->runAction()
Apr 28 12:23:29 #13 /app/code/protected/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction()
Apr 28 12:23:29 #14 /app/code/protected/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction()
Apr 28 12:23:29 #15 /app/code/protected/vendor/yiisoft/yii2/base/Application.php(384): yii\console\Application->handleRequest()
Apr 28 12:23:29 #16 /app/code/protected/yii(29): yii\base\Application->run()
Apr 28 12:23:29 #17 {main}
Apr 28 12:23:30 - - - [28/Apr/2022:19:23:30 +0000] "GET / HTTP/1.1" 302 - "-" "Mozilla (CloudronHealth)"
Apr 28 12:23:30 mysql: [Warning] Using a password on the command line interface can be insecure.
Apr 28 12:23:30 Table is empty ... -
By the way - yall don't fuss - I see u/p's in there - it's a test server
-
@girish oh I could. The issue is the DB doesn’t have the tables needed to run setup commands until the UI setup is finished. So if it’s in startup, it would not work on first install and require a restart to trigger the DB updates.
-
@atridad I did try a restart of the app just now to same result. If you'd like/are interested, happy to let you at the server to play?
-
I took another look at the package and it seems besides the async db setup done via cron, we also need to call a few upgrade steps to ensure updatability as mentioned in https://docs.humhub.org/docs/admin/updating/
Further I think it makes more sense to pre-setup humhub via a localhost curl script before the healthcheck succeeds to avoid this db setup race and make it useful immediately.
Hopefully I have more time next week to get this going.
-
@nebulon So question:
https://github.com/atridadl/cloudron-humhub-app
I suspect I know the answer but I want to make sure. If an update to an app requires that a new folder is copied from /app/code to /app/data and then symlinked, would this require a new app rather than an upgrade? It doesn't seem to be updating correctly when I try with @Sam_uk 's environments. My last resort is another set of new apps and DB migrations from old to new apps but I'd like to avoid doing things like this if possible.
Thanks for looking into this BTW. Having this in the App Store removes the need for @Sam_uk to have to wait for me to manually update for him (I have a lot going on so it takes me a while at times). Also this has to be one of the apps I've had the hardest time packaging cleanly.
-
@atridad I was able to make progress as well - got installation to work but did not get the ability to create an admin so I was just a regular user. Will try again!
-
@atridad or indeed anyone
What would I need to edit in https://github.com/atridadl/cloudron-humhub-app to build Humhub from my fork of Humhub?
-
@Sam_uk I haven’t heard anything from the cloudron side of things. I will be continuing to update the HumHub version on my repo until it is picked up. The way account creation and SMTP settings are done might make it tough. @nebulon what are your thoughts on the way the app handles config? From what I can tell there is no way to programmatically configure the site, which makes things tougher.
-
Unfortunately we still had no time to further look into this. I just tried to build and install the current state from @atridad but it seems the basic installation is still missing some steps to produce a working app. Also it is now unclear what the status is, as the upstream package repo is archived. Probably took too long for us to get to it