NocoDB is an open source #NoCode platform that turns any database into a smart spreadsheet.

Best posts made by martinkbs
-
NocoDB - Open Source Airtable Alternative
-
ClearFlask - Open-source product feedback & public roadmap platform
Community centric product feedback
Open-source ideation tool to close the feedback loop between your product and customers.
https://clearflask.com/
https://github.com/clearflask/clearflask/blob/master/INSTALLATION.md -
RE: Migrating Wordpress Cloudways to Cloudron
Hi guys,
The fastest way to migrate any WordPress installation to Cloudron is very simple:
- Export the /wp-content/ folder on the origin server to a wp-content.zip file
- Export the database on the source server to a .sql file. In phpmyadmin, select all the tables, and export to bbdd.sql
- Create a clean install of WordPress on the target Cloudron
- Once created, go to the file manager of the Cloudron WordPress installation and into the /public/ folder:
- upload the wp-content.zip file
- delete existing /wp-content/ folder
- unzip the file wp-content.zip
- change ownership to www-data from /wp-content/ folder which has been unzipped
- Finally, upload the .sql file of the database from step 2 to the path /app/data/
After this, all that remains is to migrate the database. To do this, go to the application console in Cloudron. Once in it, you just have to type:
cd ..
cd data
wp db reset
wp db import bbdd.sql
With this, the migration is complete.
-
RE: Cost Effective Backup - Backblaze B2 or Wasabi or ?
@atrilahiji Depending on the size of the backups to be stored in Wasabi, I would review in detail their 90 day minimum storage charge policy applies (https://wasabi-support.zendesk.com/hc/en-us/articles/115003947151-If-I-delete-a-file-within-90-days-after-storing-it-how-is-that-handled-from-a-billing-and-file-recovery-perspective-). Because this can make your monthly bill grow considerably.
For example, the last bill I paid from Wasabi was in July of last year, for an amount of $ 10 per month (for a bucket of about 100 Gb).
For that same bucket I am now paying in Scaleway (https://www.scaleway.com/en/object-storage/) about ⬠0.25 per month.
This invoice shows the consumption of a bucket of about 100Gb (the first 75Gb portion is free).
-
RE: Has anyone got email working with subdomains?
@timconsidine No, it is not a redundant step. Otherwise, Cloudron will not interpret the subdomain as something "different" from the main domain. Additionally, it is required for Cloudron to generate the credentials for the DKIM registry.
It is a step that I have skipped, because @marcusquinn was only asking for DNS records, but it is a necessary step.
I put a functional example to make it clearer: Installation of Mautic on the marketing.domain.es subdomain
First step: register the subdomain marketin.domain.es in Cloudron. In this case, the Manual configuration has been chosen due to organization restrictions when using Cloudflare.
This will generate, within the Cloudron Email configuration, the following records for the subdomain:
With the information from the Cloudron records, we must go to the DNS panel of our domain and configure the records as follows:
Hostname: marketing.domain.es Record type: A Expected value: XXX.XXX.XXX.XXX /* your IP server */ Hostname: marketing.domain.es Record type: MX Expected value: 10 my.example.com. Hostname: cloudron-xxxxxx._domainkey.marketing Record type: TXT Expected value: v=DKIM1; t=s; p=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Hostname: marketing.domain.es Record type: TXT Expected value: v=spf1 a:my.example.com ~all Hostname: _dmarc.marketing Record type: TXT Expected value: v=DMARC1; p=reject; pct=100
Once the DNS records of the domain have been propagated, we can install the app within the Cloudron
Now, in the Email section of the app, we can configure the email address @marketing.domain.es for sending emails from the app
And in the Email section of the marketing.domain.es subdomain we can configure the email accounts we need:
In this case, the addresses:
send and receive emails normally and Mautic works without problems in the marketing.domain.es subdomain
-
Compito - Tasks Done Right
Simple No BS project management application with a minimalist UI.
- Simple and User friendly
- Support for multiple Orgs
- Role based access control
https://compito.adi.so/
https://github.com/adisreyaj/compito -
RE: Google Drive for Backup & as binded Local Storage
@eddowding There are basically two steps:
- Create the link with rClone with the Drive you want to synchronize the files
- Mount that drive in a folder on your system so that Cloudron can view it. This is the step that you will surely miss. To do this you just have to run the following command:
rclone mount NAME-UNIT:/ /mnt/backups --allow-other --delete-before
After this step, if you do a
ls
on the folder//mnt/backups
you should already see the files that are in the Drive unit, and therefore you can already link this folder from Cloudron to make the backups. The files in the//mnt/backups
folder and the Drive are synced bi-directionally.If I have a gap this week, I will prepare a small guide with all the steps, because now that I remember, it is necessary to create a small bash and put it in the crontab so that everything continues to work when the server restarts ...
-
RE: Running WP CLI in bulk across WP apps, or running them remotely?
Hi @d19dotca,
Yes, it is possible, and with n8n it is easy.
You just need to have SSH access to each website you want to manage to run the WP-CLI command you want. In Cloudron, since there is no external SSH access to the application, you have to identify the container ID that corresponds to the website, in order to run a
docker exec
.docker exec CONTAINERID wp media regenerate --yes
In this example workflow from n8n you can see how you can do all the actions you want, executing them manually, through a cron or with the trigger you want.
-
RE: Google Drive for Backup & as binded Local Storage
You are right @girish. The screenshot of @eddowding is the volume interface.
The Configure Backup Storage looks like this:
Although this same procedure is also compatible with Volumes and can be used in applications such as Navidrome, etc.
root@xxxxxxxxx:~# rclone config Current remotes: Name Type ==== ==== GDRIVE-MUSIC drive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q>
!/bin/bash /usr/bin/rclone mount GDRIVE-MUSIC:/ /mnt/media/music --allow-other
It will also have to be included in the guide...
PS: GDRIVE-MUSIC is a shared drive @robi
Latest posts made by martinkbs
-
RE: PHP version change, like the LAMP app?
@girish I am trying to install wp-cli in the LAMP application and I get the following error:
root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/code# cd /app/data root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 6571k 100 6571k 0 0 19.6M 0 --:--:-- --:--:-- --:--:-- 19.6M root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# php wp-cli.phar --info OS: Linux 5.15.0-57-generic #63-Ubuntu SMP Thu Nov 24 13:43:17 UTC 2022 x86_64 Shell: PHP binary: /usr/bin/php8.1 PHP version: 8.1.13 php.ini used: /etc/php/8.1/cli/php.ini MySQL binary: /usr/bin/mysql MySQL version: mysql Ver 8.0.31-0ubuntu0.22.04.1 for Linux on x86_64 ((Ubuntu)) SQL modes: WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli WP-CLI vendor dir: phar://wp-cli.phar/vendor WP_CLI phar path: /app/data WP-CLI packages dir: WP-CLI cache dir: /root/.wp-cli/cache WP-CLI global config: WP-CLI project config: WP-CLI version: 2.7.1 root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# chmod +x wp-cli.phar root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# sudo mv wp-cli.phar /usr/local/bin/wp mv: inter-device move failed: 'wp-cli.phar' to '/usr/local/bin/wp'; unable to remove target: Read-only file system
I have tried moving it to the /app/data directory itself, but it doesn't work:
root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# sudo mv wp-cli.phar /app/data/wp root@5cc74b02-ed2a-49ee-8fc8-0b1f780425e6:/app/data# wp --info bash: wp: command not found
-
RE: PHP version change, like the LAMP app?
Hi @girish,
Yes, I am aware of that. But it would be nice to have the possibility of php version choice like in LAMP application.
Even if the WordPress Developer application is installed by default on version 8.1, that somehow it can be downgraded to version 7.4 for those installations that have plugins or themes that have not yet been adapted by their developers.
I know I can migrate WordPress installations to a LAMP application, but this way I would lose WP-CLI functionality, and that is something important to keep automations with n8n.
-
RE: PHP version change, like the LAMP app?
Hi guys,
Is there any progress on this issue?
It would be nice to have the possibility of choosing the PHP version in the WordPress Developer application so that updates do not accumulate.
In some complex WordPress installations, where there are plugins that the developer has not yet adapted to the PHP 8.1 version, they already accumulate 4 updates (3.0.0, 3.0.1, 3.0.2 and 3.0.3) without any possible alternative to update them.
Is there any estimation of what version will be available?
Thanks team!
-
AxiosError: Request failed with status code 502
Hi guys,
After the last update of Listmonk package [1.3.0] the following error appears when sending emails.
-
RE: Best way to mass import links?
Hi @ajtatum,
For me the fastest way is to create a workflow in n8n that will loop through all the addresses in a list, and for each one of them, make an HTTP Request to create the shortened link in Kutt.
-
RE: Ubuntu 22 installation fail
@girish No, not work
root@vmiXXXXXXX:~# curl https://ipv6.api.cloudron.io/api/v1/helper/public_ip curl: (7) Couldn't connect to server
But in a testing instance of Oracle,
curl https://ipv6.api.cloudron.io/api/v1/helper/public_ip
is not working either and is installing Cloudron without any problem -
Ubuntu 22 installation fail
@girish I am trying to install Cloudron on a fresh Ubuntu 22.04 installation and the installation process stops and does not complete.
==> Disable temporary address (IPv6) # Disable exim4 (1blu.de) systemctl stop exim4 || true Failed to stop exim4.service: Unit exim4.service not loaded. systemctl disable exim4 || true Failed to disable unit: Unit file exim4.service does not exist. # Disable bind for good measure (on online.net, kimsufi servers these are pre-installed) systemctl stop bind9 || true Failed to stop bind9.service: Unit bind9.service not loaded. systemctl disable bind9 || true Failed to disable unit: Unit file bind9.service does not exist. # on ovh images dnsmasq seems to run by default systemctl stop dnsmasq || true Failed to stop dnsmasq.service: Unit dnsmasq.service not loaded. systemctl disable dnsmasq || true Failed to disable unit: Unit file dnsmasq.service does not exist. # on ssdnodes postfix seems to run by default systemctl stop postfix || true Failed to stop postfix.service: Unit postfix.service not loaded. systemctl disable postfix || true Failed to disable unit: Unit file postfix.service does not exist. # on ubuntu 18.04 and 20.04, this is the default. this requires resolvconf for DNS to work further after the disable systemctl stop systemd-resolved || true systemctl disable systemd-resolved || true Removed /etc/systemd/system/multi-user.target.wants/systemd-resolved.service. Removed /etc/systemd/system/dbus-org.freedesktop.resolve1.service. # on vultr, ufw is enabled by default. we have our own firewall ufw disable || true Firewall stopped and disabled on system startup # we need unbound to work as this is required for installer.sh to do any DNS requests echo -e "server:\n\tinterface: 127.0.0.1\n" > /etc/unbound/unbound.conf.d/cloudron-network.conf systemctl restart unbound Job for unbound.service failed because the control process exited with error code. See "systemctl status unbound.service" and "journalctl -xeu unbound.service" for details.
root@vmiXXXXXXX:~# systemctl status unbound.service Ć unbound.service - Unbound DNS server Loaded: loaded (/lib/systemd/system/unbound.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Tue 2022-11-29 11:03:22 UTC; 3min 16s ago Docs: man:unbound(8) Process: 19575 ExecStartPre=/usr/lib/unbound/package-helper chroot_setup (code=exited, status=0/SUCCESS) Process: 19578 ExecStartPre=/usr/lib/unbound/package-helper root_trust_anchor_update (code=exited, status=0/SUCCESS) Process: 19581 ExecStart=/usr/sbin/unbound -d -p $DAEMON_OPTS (code=exited, status=1/FAILURE) Process: 19582 ExecStopPost=/usr/lib/unbound/package-helper chroot_teardown (code=exited, status=0/SUCCESS) Main PID: 19581 (code=exited, status=1/FAILURE) CPU: 25ms Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Scheduled restart job, restart counter is at 5. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: Stopped Unbound DNS server. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Start request repeated too quickly. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Failed with result 'exit-code'. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: Failed to start Unbound DNS server.
root@vmiXXXXXXX:~# journalctl -xeu unbound.service āā The job identifier is 2706 and the job result is failed. Nov 29 11:03:21 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Scheduled restart job, restart counter is at 4. āā Subject: Automatic restarting of a unit has been scheduled āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā Automatic restarting of the unit unbound.service has been scheduled, as the result for āā the configured Restart= setting for the unit. Nov 29 11:03:21 vmiXXXXXXX.contaboserver.net systemd[1]: Stopped Unbound DNS server. āā Subject: A stop job for unit unbound.service has finished āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā A stop job for unit unbound.service has finished. āā āā The job identifier is 2849 and the job result is done. Nov 29 11:03:21 vmiXXXXXXX.contaboserver.net systemd[1]: Starting Unbound DNS server... āā Subject: A start job for unit unbound.service has begun execution āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā A start job for unit unbound.service has begun execution. āā āā The job identifier is 2849. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net unbound[19581]: [1669719802] unbound[19581:0] error: can't bind socket: Cannot assign requested address for ::1 port 8953 Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net unbound[19581]: [1669719802] unbound[19581:0] error: cannot open control interface ::1 8953 Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net unbound[19581]: [1669719802] unbound[19581:0] fatal error: could not open ports Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Main process exited, code=exited, status=1/FAILURE āā Subject: Unit process exited āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā An ExecStart= process belonging to unit unbound.service has exited. āā āā The process' exit code is 'exited' and its exit status is 1. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Failed with result 'exit-code'. āā Subject: Unit failed āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā The unit unbound.service has entered the 'failed' state with result 'exit-code'. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: Failed to start Unbound DNS server. āā Subject: A start job for unit unbound.service has failed āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā A start job for unit unbound.service has finished with a failure. āā āā The job identifier is 2849 and the job result is failed. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Scheduled restart job, restart counter is at 5. āā Subject: Automatic restarting of a unit has been scheduled āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā Automatic restarting of the unit unbound.service has been scheduled, as the result for āā the configured Restart= setting for the unit. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: Stopped Unbound DNS server. āā Subject: A stop job for unit unbound.service has finished āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā A stop job for unit unbound.service has finished. āā āā The job identifier is 2992 and the job result is done. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Start request repeated too quickly. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: unbound.service: Failed with result 'exit-code'. āā Subject: Unit failed āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā The unit unbound.service has entered the 'failed' state with result 'exit-code'. Nov 29 11:03:22 vmiXXXXXXX.contaboserver.net systemd[1]: Failed to start Unbound DNS server. āā Subject: A start job for unit unbound.service has failed āā Defined-By: systemd āā Support: http://www.ubuntu.com/support āā āā A start job for unit unbound.service has finished with a failure. āā āā The job identifier is 2992 and the job result is failed.
-
RE: Apps Stuck Updating - Cleaning up old install - even after stopping/restarting task
In my case, the servers have the following configurations:
Contabo
Ubuntu 20.04.3 LTS
5.4.0-132-genericHetzner
Ubuntu 20.04.2 LTS
5.4.0-132-generic -
RE: Apps Stuck Updating - Cleaning up old install - even after stopping/restarting task
The same problem occurs on my Hetzner and Contabo servers.