diff --git a/CHANGELOG.txt b/CHANGELOG.txt new file mode 100644 index 0000000..e935b63 --- /dev/null +++ b/CHANGELOG.txt @@ -0,0 +1,52 @@ +################################################################################ + +Changelog +====================== +Version 1.0-rc2 +- Visibility of Samba shares now restricted to host machine +- Fixed xdebug.ini directory location on x386 machines +- Fixed some typos +- Moved ssh-keygen to 2048 +- Removed Pantheon DB type +- Fixed MySQL hyphen hating +- Ensure .drush folder exists +- Disabled strict host checking +- Support for Drupal 6 settings rebuilds +- Faster MySQL downloads and imports +- Drush destroy command +- Use vboxnet0 for static host/guest networking +- Reverted to NAT networking for eth0 +- Automatically builds eth1 vboxnet0 interface + +Version 1.0-rc1 +- Drush commands for Pantheon + - get/refresh files + - get/refresh database + - get/refresh codebase + - build/refresh entire site + - build vhost + - rebuilt settings +- Added drush directory to samba +- Added home directory to samba + +Version 1.0-beta2 +- Improved handling of /etc/hosts initial setup +- Improved phpmyadmin config code +- Uses installation user for samba, git, ssh setup +- Auto generates SSH keys for installation user +- Custom facts to grab the installation user and full name +- Auto git config +- Auto add installation user to www-data group + +Version 1.0-beta1 +- Fixed SSH config issue +- Fixed writability of /var/www to guest machines +- Ensured specific package versions for hopefully improved stability +- Raised apc.shm_size to 128M +- Added default domains into hosts file +- Added a generic nginx vhost file for drupal sites +- Added drush command to build drupal nginx vhosts +- Updated README + +Version 1.0-alpha1 +- Proof of concept \ No newline at end of file diff --git a/INSTALL.txt b/INSTALL.txt new file mode 100644 index 0000000..39f62b0 --- /dev/null +++ b/INSTALL.txt @@ -0,0 +1,184 @@ +################################################################################ + +Installation +====================== + +PRE-INSTALLATION CHECKS + +You can install Kalabox manually as this allows for additional configuration and +customization or you can download either our 32 or 64 bit VB images and get up +and running right away! However before you do either there are a couple of +steps you need to do first. + +1. Install Virtual Box (https://www.virtualbox.org/wiki/Downloads) +2. Add the following entry to the /etc/hosts file on your computer. + + 192.168.56.101 kala KALABOXHOSTNAME php.kala + + If you are using a pre made box KALABOXHOSTNAME = kalabox, if you are + installing manually you should replace KALABOXHOSTNAME with whatever you plan + on entering as a hostname during the installation of Ubuntu 12.04 Server. + Do notuse the hostname kalabox as this is reserved for our premade box. + +3. Make sure you have a VBOXNET network adapter in your Virtual Box. + +You can configure these in the VirtualBox Preferences; +there should be one already created for you called vboxnet0. +If there isn't simply click the add icon and click OK. Make sure that the +adapter is set to 192.168.56.1. + +IMPORTING YOUR VB APPLIANCE + +Manual Install +============== +If you wish to install manually you can start by downloading our blank Kalabox at +http://files.kalamuna.com/blankbox.tar.gz + +You will also need to download the 64 bit version of Ubuntu 12.04 Server at +http://www.ubuntu.com/download/server. + +Premade Install +=============== +If you wish to install our pre made Kalabox you can download that at. +http://files.kalamuna.com/kalabox1rc2.tar.gz + +Import your Box +================ +In Virtual Box go to File -> Import Appliance and select the Kalabox that you +downloaded. If you installed a pre made Kalabox all you will need to do is start +the box after import is complete and that is it! + +If you were more adventurous and installed the blank box please continue reading! + +SETTING UP YOUR SERVER + +1. Install Ubuntu 12.04 LTS Server* + + * Start your blank box and select the Ubuntu image you downloaded. + * Run through the installation normally but make sure you select eth0 as + your primary network adapter and do not select any of the packages such as + SSH or LAMP when it asks you at the end. + * After installation load up your box and login! + +2. Run the following commands once you have logged in: + + sudo apt-get update + sudo apt-get upgrade + sudo apt-get install puppet + sudo puppet agent --verbose --test --pluginsync --server kalabox.kalamuna.com + +That should be it! Your Kalabox should be ready to go! +Please see below for some useful tips! + +Post Installation Setup + Tips & Tricks +====================== +USING SSH + +Once you have completed the setup we recommend that you minimize VB and the +VB Terminal in favor of using your HOST's terminal. This allows for a more +authenticate experience as it relates to development. Open a terminal in your +host and type + + ssh USERNAME@kala + +This will connect you to your Kalabox. Your will use the username you set up +during installation of Ubuntu 12.04 LTS Server. If you installed a pre made box +then your user will be "kala" and your password will be "box." + +ACCESSING YOUR WEBROOT/DRUSH/HOME + +You may want to edit your code using an IDE on your HOST, download your Pantheon +aliases or add custom drush commands. Check the network on your HOST and you +should see three shares for your vbox: + + 1. WWW <- Your Webroot + 2. DRUSH <- Your drush library + 3. HOME <- Your home folder + +If you don't see them you can try connecting to smb://kala. + + +Working with Pantheon +====================== +SITE ALIASES + +The first step to working with Pantheon is to get your site aliases. These are +available for download on your Pantheon account page. You will want to open up +your HOME network share and put them in the .drush folder. You can verify that +they are in there by running "drush sa" on your Kalabox. + +SSH KEYS + +You are also going to want to make sure you add your Kalabox ssh public key to +pantheon. Kalabox automatically generates these keys for you on installation. +You can find the public key in ~/.ssh/id_rsa.pub. You may be able to open it by +going to the HOME network share on your host or you can run the following command +on your Kalabox: + + cat ~/.ssh/id_rsa.pub + +Just copy and paste the output into Pantheon. If you are prompted for a password +try rebooting your Kalabox. If this still doesn't work try running the following +command + + ssh -v -i ~/.ssh/id_rsa git@code.getpantheon.com + + +DRUSH + +Kalabox ships with 7 custom drush commands designed specifically for Pantheon +and Kalabox. They are useless without Pantheon's site alias file. + +These commands only work with your dev environments. You will use the same +naming convention as your pantheon aliases (PANTHEON.SITENAME.ENV) but you will +omit the @. You are using the alias name as an argument, not as an alias. +Here are the commands. + + 1. drush code pantheon.SITENAME.dev + + Will either git clone or git pull from your pantheon codebase to your + Kalabox at /var/www/SITENAME + + 2. drush data pantheon.SITENAME.dev + + Will either download and import from your pantheon database to your + Kalabox at kala:SITENAME_kala + + 3. drush files pantheon.SITENAME.dev + + Will sync your pantheon files to your Kalabox at + /var/www/SITENAME/sites/default/files + + 4. drush vhost pantheon.SITENAME.dev + + Will build and enable a nginx vhost file of your pantheon site on your + Kalabox at SITENAME.kala + + 5. drush build pantheon.SITENAME.dev + + Will completely build your pantheon site on your Kalabox, this will + edit settings.php + + 6. drush krefresh pantheon.SITENAME.dev + + Will refresh the code, database and files on your Kalabox from your + pantheon site + + 7. drush crush pantheon.SITENAME.dev + + Will completely remove pantheon.SITENAME.dev from your Kalabox. + +UPDATING YOUR HOST HOSTS FILE + +Remember that the Kalabox does not automatically update the /etc/hosts file on +your HOST so you will have to check for and edit the following line when you +build a new site. + + "192.168.56.1 kala php.kala" + +and add your new site to it + + "192.168.56.1 kala php.kala SITENAME.kala" + +You should now be able to navigate to SITENAME.kala in your browser and get to +your site! diff --git a/README b/README deleted file mode 100644 index 059539b..0000000 --- a/README +++ /dev/null @@ -1,189 +0,0 @@ -KALABOX -===================== -Kalabox is a local server environment optimized for PHP development. It was built with Drupal in mind but, with -small tweaks, can be used for any PHP development. It currently ships with the following packages, all configured and -tuned, optimized for a fast, best-practices local development experience. - -1. nginx -2. PHP5 (with common extensions including apc and xdebug) -3. MySQL -4. Apache Solr -5. Apache Tomcat -6. SSH -7. git -8. drush (with custom commands for Pantheon integration) -9. PHPMyAdmin -10. samba (to expose your webroot to your VB host) - -Kalabox was intended to be run on Ubuntu 12.04 LTS and has not been tested (and likely does not work) on other operating systems. -You can run Kalabox natively in Ubuntuy 12.04 LTS or, with some additional setup, you can run it on Ubuntu 12.04 LTS Server inside -of a Virtual Box. Kalamuna recommends running Kalabox in Virtual Box. - -Kalabox does not ship with an IDE so people have the flexibility to choose their own. - -Kalabox was also built to work seamlessly with Pantheon Systems. - - -Supported -===================== -Drupal 6 -Drupal 7 - -Installation -====================== -You can install Kalabox manually as this allows for additional configuration and customization or you can download either our 32 or 64 bit VB images and get up and running right away! However before you do either there are a couple of steps you need to do first. - -1. Install Virtual Box (https://www.virtualbox.org/wiki/Downloads) -2. Add the following entry to the /etc/hosts file on your computer. - - 192.168.56.101 kala KALABOXHOSTNAME php.kala - - If you are using a pre made box KALABOXHOSTNAME = kalabox, if you are installing manually you should replace KALABOXHOSTNAME - with whatever you plan on entering as a hostname during the installation of Ubuntu 12.04 Server - -3. Make sure you have a VBOXNET network adapter in your Virtual Box. - -You can configure these in the VirtualBox Preferences; there should be one already created for you called vboxnet0. If there isn't simply click the add icon and click OK. - -IMPORTING YOUR VB APPLIANCE - -If you wish to install manually you can start by downloading our blank Kalabox at http://kalabox.kalamuna.com/kalabox.ova. You will also need to download the 64 bit version of Ubuntu 12.04 Server at http://www.ubuntu.com/download/server. - -If you wish to install our pre made Kalabox you can download that at LINK. - -In Virtual Box go to File -> Import Appliance and select the Kalabox that you downloaded. If you installed a pre made Kalabox all you will need to do is start the box after import is complete and that is it! If you were more adventurous and installed the blank box please continue reading! - -SET UP YOUR SERVER - -1. Install Ubuntu 12.04 LTS Server* - - * Start your blank box and select the Ubuntu image you downloaded. - * Run through the installation normally but make sure you select eth0 as your primary network adapter and do not select - any of the packages such as SSH or LAMP when it asks you at the end. - * After installation load up your box and login! - -2. Run the following commands once you have logged in: - - sudo apt-get update - sudo apt-get upgrade - sudo apt-get install puppet - sudo puppet agent --verbose --test --pluginsync --server kalabox.kalamuna.com - -That should be it! Your Kalabox should be ready to go! Please see below for some useful tips! - - -Changelog -====================== -Version 1.0-rc1 -- Drush commands for Pantheon - - get/refresh files - - get/refresh database - - get/refresh codebase - - build/refresh entire site - - build vhost - - rebuilt settings -- Added drush directory to samba -- Added home directory to samba - -Version 1.0-beta2 -- Improved handling of /etc/hosts initial setup -- Improved phpmyadmin config code -- Uses installation user for samba, git, ssh setup -- Auto generates SSH keys for installation user -- Custom facts to grab the installation user and full name -- Auto git config -- Auto add installation user to www-data group - -Version 1.0-beta1 -- Fixed SSH config issue -- Fixed writability of /var/www to guest machines -- Ensured specific package versions for hopefully improved stability -- Raised apc.shm_size to 128M -- Added default domains into hosts file -- Added a generic nginx vhost file for drupal sites -- Added drush command to build drupal nginx vhosts -- Updated README - -Version 1.0-alpha1 -- Proof of concept - - -Post Installation Setup + Tips & Tricks -====================== -USING SSH - - Once you have completed the setup we recommend that you minimize VB and the VB Terminal in favor of using your HOST's terminal. This allows for a more authenticate experience as it relates to development. Open a terminal in your host and type - - ssh USERNAME@kala - - This will connect you to your Kalabox. Your will use the username you set up during installation of Ubuntu 12.04 LTS Server. If you installed a pre made box then your user will be "kala" and your password will be "box." - -ACCESSING YOUR WEBROOT/DRUSH/HOME - - You may want to edit your code using an IDE on your HOST, download your Pantheon aliases or add custom drush commands. Check the network on your HOST and you should see three shares for your vbox: - - 1. WWW <- Your Webroot - 2. DRUSH <- Your drush library - 3. HOME <- Your home folder - - -Working with Pantheon -====================== -SITE ALIASES - - The first step to working with pantheon is to get your site aliases. These are available for download on your pantheon account page. You will want to open up your HOME network share and put them in the .drush folder. You can verify that they are in there by running "drush sa" on your Kalabox. - -SSH KEYS - - You are also going to want to make sure you add your Kalabox ssh public key to pantheon. Kalabox automatically generates these keys for you on installation. You can find the public key in ~/.ssh/id_rsa.pub. You may be able to open it by going to the HOME network share on your host or you can run the following command on your Kalabox: - - cat ~/.ssh/id_rsa.pub - - Just copy and paste the output into Pantheon. If you are prompted for a password try rebooting your Kalabox. If this still doesn't work try running the following command - - ssh -v -i ~/.ssh/id_rsa git@code.getpantheon.com - - -DRUSH - - Kalabox ships with 6 custom drush commands designed specifically for Pantheon and Kalabox. They are useless without pantheon's site alias file. - - These commands only work with your dev environments. You will use the same naming convention as your pantheon aliases (PANTHEON.SITENAME.ENV) but you will omit the @. Here are the commands. - - drush code pantheon.SITENAME.dev - - Will either git clone or git pull from your pantheon codebase to your Kalabox at /var/www/SITENAME - - drush data pantheon.SITENAME.dev - - Will either download and import from your pantheon database to your Kalabox at kala:SITENAME_kala - drush files pantheon.SITENAME.dev - - Will sync your pantheon files to your Kalabox at /var/www/SITENAME/sites/default/files - drush vhost pantheon.SITENAME.dev - - Will build and enable a nginx vhost file of your pantheon site on your Kalabox at SITENAME.kala - - drush build pantheon.SITENAME.dev - - Will completely build your pantheon site on your Kalabox, this will edit settings.php - - drush krefresh pantheon.SITENAME.dev - - Will refresh the code, database and files on your Kalabox from your pantheon site - - drush wmd pantheon.SITENAME.dev - - Will completely remove pantheon.SITENAME.dev from your Kalabox. - - *Remember that the Kalabox does not automatically update the /etc/hosts file on your HOST so you will have to check for and edit the following line when you build a new site - - "192.168.56.1 kala php.kala" - - and add your new site to it - - "192.168.56.1 kala php.kala SITENAME.kala" - - You should now be able to navigate to SITENAME.kala in your browser and get to your site! - - diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..551ff04 --- /dev/null +++ b/README.txt @@ -0,0 +1,38 @@ +################################################################################ + +KALABOX +===================== +Kalabox is a local server environment optimized for PHP development. It was +built with Drupal and Pantheon in mind but, with small tweaks, can be used for +any PHP development. It currently ships with the following packages, all +configured, tuned and optimized for a fast, best-practices local development +experience. + +1. nginx +2. PHP5 (with common extensions including apc and xdebug) +3. MySQL +4. Apache Solr +5. Apache Tomcat +6. SSH +7. git +8. drush (with custom commands for Pantheon integration) +9. PHPMyAdmin +10. samba (to expose your webroot, drush and home to your VB host) + + +Supported +===================== +Drupal 6 +Drupal 7 + +Useful Locations +===================== + +1. Home/phpinfo() - http://kala +2. phpMyAdmin - http://php.kala +3. solr - http://kala:8080/solr +4. drush - /usr/share/drush +5. SSH public key - ~/.ssh/id_rsa.pub +6. Pantheon aliases - ~/.drush/pantheon.aliases.drushrc.php + +