Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 54 lines (42 sloc) 1.979 kb
9d46a1d @pmenglund initial commit
pmenglund authored
1 This is a sample release repository for BOSH that deploys a three tier LAMP application: a wordpress blog which consists of a number of apache servers running php & wordpress, fronted by nginx, and using one mysql database for storage.
2
3 The sample is made up of three jobs:
4 - mysql
5 - wordpress
6 which consist of apache + php5 + wordpress
7 - nginx
8
9 The repository also contains a sample deployment file (wordpress.yml) which you can use to deploy the jobs that makes up the application, after updating the "networks" section.
10
11 There are three main directories in the release:
12 - src
13 this is the source code for the packages
14 - packages
15 this is instructions on how to compile the source into binaries
16 - jobs
17 this is scripts and configuration files required to run the packages
18
19 A package is made up of the following files:
20 - spec
21 defines the package name, the source file it uses and optionally other
22 packages it depends on to compile
23 - pre_packaging
24 an optional file that prepares the source for the packaging script
25 - packing
26 the script that compiles the source into binaries
27
28 A job is made up of the following files:
29 - spec
30 defines the job name, package dependencies and how to convert templates
31 into files
32 - monit
33 the monit file which defines how to start and stop the job
34 - templates
35 a directory which contain the scripts and config files for the job
36
37 The wordpress job consist of four packages: apache2, php5, wordpress and mysqlclient.
38 Normally php is compiled into apache, but here it is kept in its own package so that you can easily upgrade one without the other.
39
40 To deploy the sample application use the following command sequence:
41
42 bosh create release (name it wordpress)
43 bosh upload release
44 edit deployment manifest (wordpress.yml)
45 bosh deployment wordpress.yml
46 bosh deploy
47
48
49 TODO
50 use HyperDB & MySQL master/slave replication
51 http://wordpress.org/extend/plugins/hyperdb/installation/
52 http://dev.mysql.com/doc/refman/5.1/en/replication-howto.html
0aafb94 @pmenglund sample 3-tier app
pmenglund authored
53
Something went wrong with that request. Please try again.