NAME
Catalyst::Manual::Installation::CentOS4 - Catalyst Installation on CentOS 4
DESCRIPTION
This document provides directions on how to install CentOS 4 (a rebuild of RedHat Enterprise 4) and then install Catalyst.
If you already have a functioning install of CentOS, RHEL, or a comparable Linux OS, you should be able to skip this first section and go straight to the INSTALL CATALYST section.
NOTE: You might want to consult the latest version of this document. It is available at: http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Installation/CentOS4.pod
INSTALL CENTOS
These directions are written for CentOS 4.3 on an i386 machine; however, you can substitute other versions as they become available.
Go to http://isoredirect.centos.org/centos/4/isos/i386/ and click the nearest mirror.
Download
CentOS-4.3-i386-bin1of4.iso(you only need the first disk).Burn the .iso to CD.
Insert the CD into your machine and power it up.
Hit
Enterat theboot:prompt.CD media test: you can either select
OKorSkipdepending on whether or not you trust your burn.The installation GUI should start. Click next at the "Welcome to CentOS-4" screen.
Select a language and click
Next.Select a keyboard configuration and click
Next.Select
Customfor the installation type and clickNext.Leave
Automatically partitionselected on theDisk Partitioning Setupand clickNext.Uncheck
Review (and modify if needed) the partitions created, but leave the rest of the default settings on theAutomatic Partitioningscreen. Then clickNext.Click
Yesat theAre you sure you want to do this?warning.Click
Nexton theBoot Loader Configurationscreen.Update the
Network Configurationscreen as necessary and clickNext.Check
Remote Login (SSH)and clickNexton theFirewall Configurationscreen.Select additional languages as necessary. Click
Next.Select the appropriate time zone and click
Next.Enter a root password and click
Next.Scroll to the bottom of the
Package Group Selectionscreen and checkMinimal(the last option). ClickNext.Click
Nextat theAbout to Installscreen.The installation will prepare the hard drive and then install the required rpm packages.
Once the installation completes, remove the CD and click
Reboot.Type
vi /etc/sysconfig/iptablesand add the following line as the third to last line of the file (above the-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibitedline):-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPTThis will allow Catalyst to make use of port 3000 (the default for the development server).
Type
service iptables restartto restart the iptables firewall using the updated configuration.Type
yum -y updateto retrieve the latest patches.
INSTALL CATALYST
Type
yum -y install gcc expat-devel sqlite3to install several packages used by Catalyst.Type the following:
$ perl -MCPAN -e shell ... Are you ready for manual configuration? [yes] n ... cpan shell -- CPAN exploration and modules installation (v1.7601) ReadLine support available (try 'install Bundle::CPAN') cpan> force install Module::Build ... cpan> quitOptional: The remaining steps of the installation could run significantly faster if you configure a fast mirror that uses HTTP vs. FTP (both transfer data at the same rate once the transfer is in progress, but HTTP connects much more quickly... and a Catalyst installation involves many connections). One way to do this is to answer
yesto theAre you ready for manual configuration?prompt when you ranperl -MCPAN -e shellabove. Or, you can rerun the script by entering the following command at thecpan>prompt:cpan> o conf initIt will then take you through the configuration dialog.
However, it's often easiesr to avoid the full configuration dialog and manually add a URL. To prepend a new URL to the front of the list, use the
unshiftoption too conf:cpan> o conf urllist unshift http://www.perl.com/CPAN/Where
http://www.perl.com/CPAN/is replaced by a nearby, HTTP-based mirror. You can get a list of all mirrors (including where they are located, their bandwidth, and their update frequency) at http://www.perl.com/CPAN/MIRRORED.BY.Then, be sure to save your changes (or they will be lost the next time you restart the CPAN shell):
cpan> o conf commitYou can view the current settings with
o conf urllist(or justo confto view all settings):cpan> o conf urllist urllist http://www.perl.com/CPAN/ Type 'o conf' to view configuration edit optionsNote that multiple values can be entered for the
urllistoption (the first entry will be used as long as it responds).Type
wget http://www.shadowcatsystems.co.uk/static/cat-installto retrieve a copy of thecat-installscript.Type
vi cat-installto open the installer script, then insert the following lines at the bottom of the file (after theinstall('Catalyst');line):install('Catalyst::Devel'); install('ExtUtils::ParseXS'); install('Digest::SHA1'); install('Digest::SHA'); install('Class::DBI'); install('DBIx::Class'); install('DBIx::Class::HTMLWidget'); install('Module::Install'); install('Catalyst::Plugin::ConfigLoader'); install('Catalyst::Plugin::Session'); install('Catalyst::Plugin::Session::State::Cookie'); install('Catalyst::Plugin::Session::Store::FastMmap'); install('Catalyst::Plugin::Authorization::ACL'); install('Catalyst::Plugin::Authentication'); install('Catalyst::Plugin::Authorization::Roles'); install('Catalyst::Plugin::Authentication::Store::DBIC'); install('Catalyst::Plugin::DefaultEnd'); install('Catalyst::Plugin::StackTrace'); install('Catalyst::Plugin::Dumper'); install('Catalyst::Plugin::HTML::Widget'); install('Catalyst::Model::DBIC::Schema'); install('Catalyst::View::TT'); install('Test::WWW::Mechanize'); install('Test::WWW::Mechanize::Catalyst'); install('Test::Pod'); install('Test::Pod::Coverage');Type
perl cat-install. It will take a while to complete.
You should now have a functioning Catalyst installation with the modules and plugins required to run the Catalyst tutorial.
TESTING THE INSTALLATION
Download the tarball of the final tutorial application:
$ wget http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/Final_Tarball/MyApp.tgzUntar it:
$ tar zxvf MyApp.tgz $ cd MyAppRun the tests:
$ CATALYST_DEBUG=0 prove --lib lib t t/02pod...............skipped all skipped: set TEST_POD to enable this test t/03podcoverage.......skipped all skipped: set TEST_POD to enable this test t/01app...............ok t/controller_Login....ok t/live_app01..........ok 1/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 2/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 15/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok 16/0[debug] ***Root::auto User not found, forwarding to /login t/live_app01..........ok t/model_MyAppDB.......ok All tests successful, 2 tests skipped. Files=6, Tests=55, 11 wallclock secs ( 4.68 cusr + 4.84 csys = 9.52 CPU)You should see
All tests successful.
AUTHOR
Kennedy Clark, hkclark@gmail.com
Please report any errors, issues or suggestions to the author. The most recent version of the Catalyst Tutorial can be found at http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Tutorial/.
Copyright 2006, Kennedy Clark, under Creative Commons License (http://creativecommons.org/licenses/by-nc-sa/2.5/).