Personal tools
     DOCUMENTATION

Appliance:LAMP Appliance

From rPath Wiki

Jump to: navigation, search

Contents

float

The LAMP Appliance brings the best of breed Web application tools together in one easily-deployable form factor. From the Apache Web server, to your choice of databases (MySQL and PostgreSQL), to the three preeminent scripting languages (Perl, PHP, and Python), the Linux-based LAMP Appliance gives you the foundation for the database-backed Web application of your choice.




Image:Bulbgraph.png   The LAMP Appliance is suitable for developers who are familiar with the various component tools - including Apache, MySQL or PostgreSQL and one of the three development languages. It is not a prebuilt-appliance that "does" anything out of the box other that start Apache. You must add your own application code and content.
Image:Bulbgraph.png   This content of this appliance can also used as the "base" for a number of "mashup" appliances built on the LAMP stack via the rBuilder Online service. See the MediaWiki appliance for an example.

Download

Download page on rBuilder Online.

Installation

The fastest way to get started is to download one of the virtual appliance images and boot it. Alternatively, you can download the ISO images and complete the graphical installation to install LAMP appliance on a dedicated system.

Image:Bulbgraph.png   {{{1}}}

Configuration

  • Login to the rPath Appliance Agent interface and complete the wizard. rAA will be at https://<your_ip>:8003/ or http://<your_ip>:8004/.
  • Set a password for web account, it will be used to access your site by ftp/sftp and to access web-interface to database.
  • If you need a database, configure one as described below.
  • sftp or ftp your content using user name web and the password you set in the rAA wizard.
  • The Apache service (httpd) starts automatically upon first boot, no additional configuration required.

Configuring MySQL

  • Point your browser to http://<your_ip>/phpMyAdmin/, login with user name web and the password you set in the rAA wizard.

Configuring PostgreSQL

  • Point your browser to http://<your_ip>/phpPgAdmin/, login with user name web and the password you set in the rAA wizard.
  • After logging in, you will need to login to PostgreSQL with user name postgres and a blank password.

Installed services and tools

  • Apache 2.0.59
  • PHP 5.2.2, including gd, iconv, ldap, mysql, openssl, pgsql, xml/xmlrpc extensions
  • Perl 5.8.7, including DBI, HTML::Parser, XML, libwww, libxml modules
  • Python 2.4, including mod_python 3.1.4
  • MySQL 5.0.x
  • PostgreSQL 8.0
  • openssh, including sftp/scp support
  • vsftpd 2.0.3
  • sendmail 8.13.7
  • bind (named) 9.3.2_P1 -- does not start by default
  • snmpd 5.2.1.2 -- does not start by default

Administration

While this appliance is designed to be self-contained and require minimal care and feeding, some basic adminstration tasks that you may want to perform are documented below.

Configure networking

By default, this appliance is set to use DHCP to obtain its network address automatically.

To change the network configuration for this appliance, you can use the rPath Appliance Agent web-based configuration UI. See the rPath Appliance Platform User Guide for detailed instructions.

Passwords

purpose username default password how to change
console access root empty
  • either use rAA plugin to change root password
  • or execute the following command in console: passwd root
rAA access admin password
  • use rAA plugin to change administrator password
website access,
phpMyAdmin/phpPgAdmin access
web not set
  • either use rAA plugin to change web password
  • or execute the following command in console: passwd web
ftp web needs to be set
  • either use rAA plugin to change web password
  • or execute the following command in console: passwd web
MySQL super-user root empty do not change since this user can access MySQL from localhost only and is used by phpMyAdmin
PostgreSQL super-user postgres empty use phpPgAdmin web-interface or psql command-line front-end to manage PostgreSQL users

Accessing your site

You site resides in the /srv/www/html directory on server. You can upload files with ftp, sftp or scp commands using web user credentials. Newly uploaded files and directories are owned by web user and apache group.

CGI scripts reside in /srv/www/cgi-bin directory on server.

PHP scripts should have .php extension.

Security Tips

  • Use secure https protocol instead of plain http to access rAA, phpMyAdmin and phpPgAdmin.
  • If application's installation guide asks you to make a file or directory world-writable, you can actually make it group-writable with ftp client.

Updates

Unlike many other so-called software appliances based on "snapshot" techniques, rPath appliances have built-in the capability to be incrementally updated as new features are added by the development team.

Updating using rPath Appliance Agent (rAA)

Updates

Unlike many other so-called software appliances based on "snapshot" techniques, rPath appliances have built-in the capability to be incrementally updated as new features are added by the development team.

Updating using rPath Appliance Agent (rAA)

If you have updated to at least version {{{1}}} of this appliance, you can use the rPath Appliance Platform, formerly the rPath Appliance Agent (rAA), to update remotely using a web interface. The rPath Appliance Platform interface can be accessed via https://<appliance_ip>:8003/

See the rPath Appliance Platform User Guide for full instructions.

   Please note that if you have added additional packages using conary on the command line, these packages will be removed by the rAA update function. To preserve your customization of the appliance software, do not use rAA. Instead, use the conary updateall command line discussed below. Alternatively, you can change rAA's default behavior by modifying the /etc/raa/prod.cfg file and change the line updatetroves.migrate = True to updatetroves.migrate = False

Updating without using rAA

If you have downloaded an earlier release, don't download a new appliance! Instead, login to your appliance as root and issue the command

conary updateall

This should grab the latest changes for you, including the rPath Appliance Agent. If you have customized the appliance software by adding any additional packages using conary, these will be preserved.

Support

LAMP Appliance is a community supported project. Questions about LAMP Appliance should be raised on the LAMP Appliance discussion list

You can also discuss the project using the discussion tab in this wiki.

Developers