OpenApp Drupal
NOTE: this module has some issues. For now, you'll need to add at least one vhost (you can name it identically to the site) to make a site work.
Contents |
What does OpenApp Drupal include?
OpenApp Drupal consists of the following software:
- Drupal 7.7
- Drush
- Apache2 with mod_php
- Mysql server
- Postfix
- OpenPanel with mod-drupal, mod-backup, mod-smtp
- OpenApp-tuning
- OpenApp-backup
Installing OpenApp Drupal
- Please note that OpenApp always expects a clean install! /var/www/ and directories like that might be deleted by OpenApp
- Make sure that you have the OpenPanel sources in your sources.list and your softwarelist is up to date. Follow instructions on OpenPanel_and_APT
- Now install OpenApp Drupal
apt-get install openapp-drupal
- During the install, you will get some questions:
- Mysql-server
- The password that the user root should use to login to Mysql (Twice)
- Postfix
- The type of configuration you want. Select 'Internet Site' (press enter). OpenApp will configure postfix later on
- System mail name. This should be the hostname of your system and should already be entered (press enter). OpenApp can configure this later on
- Mysql-server
- Set a password for OpenPanel
openpanel-cli "update user password=<your password>"
- You can now login at https://<your ipaddress>:4089/ with the password entered in the previous step
- You are now in the OpenPanel-interface of your machine. Here, you can easily configure backups, outgoing email and create a Drupal-site so that you can start using Drupal.
- In the Drupal sites-tab, create a site. This will create site in a multi-site configuration of Drupal. You can keep creating Drupal sites.
- Configure your SMTP-settings in the SMTP-tab. If you do not know which smarthost you should be using, you can leave it disabled. That should work in most of the situations.
- Configure your backups! That will make sure that your machine creates a backup each day/week/month, and will enable you to easily recover from disasters
- Login to the Drupal admin-interface at the url you entered in OpenPanel, and don't forget to configure Drupal.
Multiple sites
OpenApp Drupal runs on a multisite configuration. This means that you can configure multiple accounts, which all share the same codebase and the same virtual host. If you want seperate vhosts for sites, you can create an Apache vhost with the same configuration as the one OpenApp Drupal creates, but using specific ServerNames and other settings.
Updating OpenApp Drupal
Drupal will not be updated by OpenApp, since Drupal can upgrade itself. OpenApp will run apt-get update and apt-get dist-upgrade every night if you enable it in the 'Upgrades'-tab. That will upgrade all the software on the machine and may install new packages when needed.
Backing up OpenApp Drupal
When you configure backups via OpenPanel, OpenApp-backup will run daily/weekly/montly and leave a executable file in /var/backups/. To restore from this file, please read about OpenApp_Backup. In addition to other OpenApp installs, OpenApp-drupal can use xtrabackup. This is useful when you have large (InnoDB) databases that you want to backup. Because xtrabackup doesn't dump the databases like mysqldump does, you do not suffer from locking of large table. To use xtrabackup, you must install it manually. Please see the instructions on the instructions on the Percona website. After you configured the sources of Percona's xtrabackup, type:
apt-get install openapp-xtrabackup
When apt-get is done, the xtrabackupmodule for OpenApp Backup will be enabled.
Building an image
To build an image for OpenApp Drupal (so that you have pre-configured everything for your user) take the following steps:
- Follow OpenApp Drupal#Installing OpenApp Drupal
- Run
/var/openpanel/tools/openapp-smtp-configure-postfix "<hostname of the machine>" "<true|false smarthost>" "<smarthost, if former value is true>" "<admin emailaddress>"
- Run
openpanel-cli "update user password=<password>"
- If you want to create a website as well, run
/var/openpanel/tools/openapp-drupal-site-install "<hostname of the machine>" "<Name of the site (title)>" "<password for the adminuser>" "<admin emailaddress>"