Differences between revisions 3 and 4
Revision 3 as of 2025-07-11 05:12:44
Size: 4473
Editor: MartinWojak
Comment:
Revision 4 as of 2025-07-11 05:15:35
Size: 4658
Editor: MartinWojak
Comment:
Deletions are marked like this. Additions are marked like this.
Line 36: Line 36:
{{{
Line 40: Line 41:
}}}
Line 41: Line 43:
Backups and Updates
Setup and Configure RCLONE
https://docs.oracle.com/en/solutions/move-data-to-cloud-storage-using-rclone/configure-rclone-object-storage.html
https://rclone.org/oracleobjectstorage/
=== Backups and Updates ===
 *
Setup and Configure RCLONE
 * https://docs.oracle.com/en/solutions/move-data-to-cloud-storage-using-rclone/configure-rclone-object-storage.html
 * https://rclone.org/oracleobjectstorage/
{{{
Line 52: Line 55:
}}}
Line 53: Line 57:
https://github.com/ChurchCRM/CRM/wiki/First-Run-Configuration-Items
Line 55: Line 58:
Admin, Church Information:
Church name: Glen Waverley Uniting Church
Address: Cnr. Kingsway & Bogong Avenue
City: Glen Waverley
State: Victoria
Zip: 3150
Country: Australia
Email: [email protected]
sTimeZone: Australia/Melbourne
ChurchCRM First Run Configuration Items
 * https://github.com/ChurchCRM/CRM/wiki/First-Run-Configuration-Items
 *
Admin, Church Information:
 * Church name: Glen Waverley Uniting Church
 * Address: Cnr. Kingsway & Bogong Avenue
 * City: Glen Waverley
 * State: Victoria
 * Zip: 3150
 * Country: Australia
 *
Email: [email protected]
 * sTimeZone: Australia/Melbourne
Line 65: Line 70:
User Setup:
MinPasswordLength: 13
 * User Setup:
 * MinPasswordLength: 13
Line 68: Line 73:
Email Setup:
SMTPHost: smtp.email.ap-melbourne-1.oci.oraclecloud.com
ToEmailAddress: [email protected]
 * Email Setup:
 * SMTPHost: smtp.email.ap-melbourne-1.oci.oraclecloud.com
 * ToEmailAddress: [email protected]
Line 72: Line 77:
PeopleSetup:
Default City: Melbourne
Default State: Victoria
Default Country: Australia
sPersonListColumns, Edit Settings, 'Cell Phone', name change "Cell Phone" to "Mobile Phone"
sPersonListColumns, Edit Settings, 'Gender', name change visible to "false"
sFamilyListColumns, Edit Settings, 'Cell Phone', name change "Cell Phone" to "Mobile Phone"
 * PeopleSetup:
 * Default City: Melbourne
 * Default State: Victoria
 * Default Country: Australia
 * sPersonListColumns, Edit Settings, 'Cell Phone', name change "Cell Phone" to "Mobile Phone"
 * sPersonListColumns, Edit Settings, 'Gender', name change visible to "false"
 * sFamilyListColumns, Edit Settings, 'Cell Phone', name change "Cell Phone" to "Mobile Phone"
Line 80: Line 85:
Localisation:
Language: Australia
DateFormatLong: d/m/Y
DateFormatNoYear: d/m
DateFormatShort: d/m/y
DateTimeFormat: d/m/Y g:i a
DatePickerFormat: d-m-Y
DatePickerPlaceHolder: dd-mm-yyyy
 * Localisation:
 * Language: Australia
 * DateFormatLong: d/m/Y
 * DateFormatNoYear: d/m
 * DateFormatShort: d/m/y
 * DateTimeFormat: d/m/Y g:i a
 * DatePickerFormat: d-m-Y
 * DatePickerPlaceHolder: dd-mm-yyyy
Line 89: Line 94:
System Settings:
bEnableIntegrityCheck: False
sLastIntegrityCheckTimeStamp: clear field
 * System Settings:
 * bEnableIntegrityCheck: False
 * sLastIntegrityCheckTimeStamp: clear field
Line 93: Line 98:
AFTER EACH UPGRADE: After Each Upgrade
Line 95: Line 100:
{{{
Line 112: Line 117:
}}}

Link to > NewDatabase2025

ChurchCRM Setup Guide

1. ChurchCRM Install Script

  • Build Ubuntu 24 LTS Server
  • 1 CPU, 2GB RAM, 50GB Disk
  • Oracle Cloud or similar Cloud Hosting Provider
  • SSH into server

timedatectl set-timezone Australia/Melbourne
apt install locales -y
locale-gen en_AU.UTF-8
update-locale LANG=en_AU.UTF-8
reboot
wget https://raw.githubusercontent.com/ChurchCRM/CRM/refs/heads/master/install/install.sh
sh install.sh churchcrm churchcrm YOURdbPASSWORD
mysql_secure_installation
Note: When securing MySQL you will want to answer "yes" to all question, except for change root password.

Firewall Setup

  • https://gist.github.com/mrladeia/da43fc783610758c6dbcaba22b4f7acd

  • You need to open up ports 80 and 443, on file mcedit /etc/iptables/rules.v4 just add
  • -A INPUT -p tcp -m state --state NEW -m multiport --dports 80,443 -j ACCEPT
  • directly below
  • -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
  • And reboot OR run bellow
  • sudo /sbin/iptables-restore < /etc/iptables/rules.v4

Install SSL Certificate

snap install core
snap install --classic certbot
certbot --apache --agree-tos -m [email protected] --no-eff-email -d crm.wojco.org
systemctl disable snap.certbot.renew.timer

2. Backups and Updates

crontab -e
00 23 * * *  mysqldump -u root churchcrm | gzip > /opt/crmbackup/churchcrm-backup-$(date +\%Y\%m\%d).sql.gz
00 22 * * * find /opt/crmbackup/ -type f -name "*.sql.gz" -mtime +15 -delete
0 21 * * 0 mysqldump -u root churchcrm | gzip > /opt/crmbackup-bucket/churchcrm-backup-weekly-$(date +\%Y\%m\%d).sql.gz
10 21 * * 0 rclone move /opt/crmbackup-bucket/ ocistorage:gwuc-crm-backups
20 21 * * 0 rclone copy /var/www/html/churchcrm/Images/ ocistorage:gwuc-crm-backups/images/
0 2 * * 2 sudo /usr/bin/unattended-upgrade -v

ChurchCRM First Run Configuration Items

After Each Upgrade Remove Gender field

mcedit /var/www/html/churchcrm/PersonEditor.php, search and change:
gettext('Gender') to gettext('NotUsed')
gettext('Select Gender') to gettext('-')

mcedit /var/www/html/churchcrm/PersonView.php, search and change:
gettext('Gender') to gettext('NotUsed')

mcedit /var/www/html/churchcrm/FamilyEditor.php, search and change:
gettext('Gender') to gettext('NotUsed')
gettext('Select Gender') to gettext('-')

mcedit /var/www/html/churchcrm/ChurchCRM/tasks/PersonGenderDataCheck.php
return $this->count > 0;      to           return $this->count > 10000;

mcedit /var/www/html/churchcrm/ChurchCRM/Service/AppIntegrityService.php
(F7 search for ModRewrite, then comment out line with // at start, F2 to save)

ADD USERS TO MYSQL:

CREATE USER 'wojakma'@'%' IDENTIFIED BY 'password-here'; GRANT SELECT ON churchcrm.* TO 'wojakma'@'%'; CREATE USER 'morganda'@'%' IDENTIFIED BY 'password-here'; GRANT SELECT ON churchcrm.* TO 'morganda'@'%'; FLUSH PRIVILEGES;

User Manuals https://github.com/ChurchCRM/CRM/wiki https://church-web-crm.readthedocs.io/en/2.3.5/Installation/Manual/ (outdated)

***********************************************************

DAVID TO ADD CUSTOM FIELDS, CLASSIFICATIONS, ETC.

ChurchCRMsetupGuide (last edited 2025-07-11 05:18:37 by MartinWojak)