Project

General

Profile

Step 2 - Install and run in 5 minutes » History » Revision 38

Revision 37 (Henning Blohm, 05.03.2014 10:49) → Revision 38/48 (Henning Blohm, 08.03.2014 20:33)

h1. Install and run Z2 in 5 minutes 

 [[Step_1_-_What_is_z2|« Step 1 - What is z2]] 

 h2. Prerequisites 

 You need a properly setup JDK 6 or 7 on Linux, Mac OS X or Windows - that's all.  
 A halfway modern system will do.  

 This how-to uses the "Git":http://git-scm.com/ VCS, which has to be installed on your system (we're using Git version 1.7). You can also run Z2 with SVN as described on [[Step 4 - First steps with Z2 on SVN]]. 

 It is beneficial to use the Eclipse IDE (Ganymed, Helios, Indigo, Kepler work all fine). There's a small Eclipse plug-in called "Eclipsoid" which makes it easier to develop z2 applications within Eclipse (see [[Step 3 - First steps with Z2 on Git]] for more details). However you can use any IDE (including vi and notepad) together with z2. 

 h2. Creating a _home_ for Z2 

 This is a best practice approach (and other approaches are possible). We recommend to keep the repositories and the IDE workspace close together. This way we don't need to adjust the path settings in the Z2 configuration files and they can remain relative paths. 

 Create a folder called z2-base inside your favorite/home/development/what-ever directory and enter it: 

 <pre> 
 > mkdir z2-base 
 > cd z2-base 
 </pre> 

 h2. Cloning the Z2 core 

 As described in [[Step_1_-_What_is_z2|Step 1 - What is z2]] the z2-base project contains several repositories.  
 You always start with the _core_ repository. Create a clone from git.z2-environment.net which will checkout the "master" branch automatically (output and numbers vary of course): 

 <pre> 
 > git clone http://git.z2-environment.net/z2-base.core 
 Cloning into 'z2-base.core'... 
 remote: Counting objects: 11032, done. 
 remote: Compressing objects: 100% (2402/2402), done. 
 remote: Total 11032 (delta 7705), reused 10733 (delta 7602) 
 Receiving objects: 100% (11032/11032), 18.04 MiB | 222.00 KiB/s, done. 
 Resolving deltas: 100% (7705/7705), done. 
 Checking connectivity... done 

 > cd z2-base.core 
 > git branch 
 * master 
 </pre> 

 That's all you need to do in order to install the z2-Environment and you can start the server right away. Before starting, make sure that you have a working Java installation. To test, type 

 <pre> 
 java -version 
 </pre> 

 on a command line. This should output some information on your Java Development Kit of version 1.6 or higher.  

 h2. Starting the z2-Environment 

 The start scripts are located inside @run/bin@ and are called _go.sh_ on Unix based systems like Linux and Mac OS and _go.bat_ on Windows. There's also a gui-based version that we will discover later.  

 <pre> 
 > cd run/bin 
 > ./go.sh 

 03/08 20:30:29 03/05 10:42:33 [1]...hers.HomeLauncher [800]: Z2 Home Launcher, (c) 2010-2013 ZFabrik Software KG 
 03/08 20:30:30 03/05 10:42:34 [1]...ProcessRunnerImpl [800]: Running core build 201310071127 as hb in z2 home /home/hb/copy/install/z2-base.core, timezone Europe/Berlin, language en, region null 
 03/08 20:30:30 03/05 10:42:34 [1]...ProcessRunnerImpl [800]: Using VM v1.7.0_09 v1.6.0_45 by Oracle Corporation Sun Microsystems Inc. at /usr/lib/jvm/jdk1.7.0_09/jre /home/hb/jdk1.6.0_45/jre on Linux (arch: 3.11.0-17-generic) 
 03/08 20:30:30 03/05 10:42:34 [1]...ProcessRunnerImpl [800]: ************************************ 
 03/08 20:30:30 03/05 10:42:34 [1]...ProcessRunnerImpl [800]: *** Running in DEVELOPMENT mode! *** 
 03/08 20:30:30 03/05 10:42:34 [1]...ProcessRunnerImpl [800]: ************************************ 
 03/08 20:30:30 03/05 10:42:34 [1]...entRepositoryImpl [800]: Using GIT-CR: component:com.zfabrik.boot.config/baseRepository,repo:95f655a0,prio:500,checkDepth:1073741823,fileSystem:fs-root:/home/hb/copy/install/z2-base.core/work/repos/95f655a0/git,origin:http://git.z2-environment.net/z2-base.base,branch:master,optional:true 
 03/08 20:30:30 03/05 10:42:34 [1]...entRepositoryImpl [800]: Cloning GIT-CR: component:com.zfabrik.boot.config/baseRepository,repo:95f655a0,prio:500,checkDepth:1073741823,fileSystem:fs-root:/home/hb/copy/install/z2-base.core/work/repos/95f655a0/git,origin:http://git.z2-environment.net/z2-base.base,branch:master,optional:true. This will take some seconds... 
 03/08 20:31:58 03/05 10:46:55 [1]...entRepositoryImpl [800]: Created working-clone within 88266 261730 msec for GIT-CR: component:com.zfabrik.boot.config/baseRepository,repo:95f655a0,prio:500,checkDepth:1073741823,fileSystem:fs-root:/home/hb/copy/install/z2-base.core/work/repos/95f655a0/git,origin:http://git.z2-environment.net/z2-base.base,branch:master,optional:true 
 03/08 20:31:58 03/05 10:46:56 [1]...devcr.DevRepoImpl [800]: Dev Repository: Registered component:com.zfabrik.dev.repo/devRepo,repo:7ea65360,prio:750, workspaces (1): [/home/hb/copy/install] 
 03/08 20:31:58 03/05 10:46:56 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/bootrepo_up 
 03/08 20:31:58 03/05 10:46:56 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/sysrepo_up 
 03/08 20:32:01 03/05 10:46:59 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/process_up 
 03/08 20:32:01 03/05 10:46:59 [18]...ent/webWorker@0.1 [800]: Listening for transport dt_socket at address: 5100 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...ProcessRunnerImpl [800]: Running core build 201310071127 as hb in z2 home /home/hb/copy/install/z2-base.core, timezone , language en, region null 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...ProcessRunnerImpl [800]: Using VM v1.7.0_09 v1.6.0_45 by Oracle Corporation Sun Microsystems Inc. at /usr/lib/jvm/jdk1.7.0_09/jre /home/hb/jdk1.6.0_45/jre on Linux (arch: 3.11.0-17-generic) 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...devcr.DevRepoImpl [800]: Dev Repository: Registered component:com.zfabrik.dev.repo/devRepo,repo:7ea65360,prio:750, workspaces (1): [/home/hb/copy/install] 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/bootrepo_up 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/sysrepo_up 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/process_up 
 03/08 20:32:01 03/05 10:46:59 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:01 03/05 10:46:59 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/worker_up 
 03/08 20:32:02 03/05 10:47:00 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:02 03/05 10:47:00 [1]...pp.WebAppResource [800]: Starting WebApp: com.zfabrik.dev.z2unit/web 
 03/08 20:32:02 03/05 10:47:00 [18]...ent/webWorker@0.1 [800]: INFO    org.eclipse.jetty.server.Server    - jetty-8.1.11.v20130520 
 03/08 20:32:02 03/05 10:47:00 [18]...ent/webWorker@0.1 [800]: INFO    org.eclipse.jetty.server.AbstractConnector    - Started SelectChannelConnector@0.0.0.0:8080 
 03/08 20:32:03 03/05 10:47:01 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:01 [1]...pp.WebAppResource [800]: Done starting Web App (/z2unit): com.zfabrik.dev.z2unit/web 
 03/08 20:32:03 03/05 10:47:01 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:01 [1]...pp.WebAppResource [800]: Starting WebApp: com.zfabrik.dev.eclipsoid.srv/web 
 03/08 20:32:03 03/05 10:47:01 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:01 [1]...pp.WebAppResource [800]: Done starting Web App (/eclipsoid): com.zfabrik.dev.eclipsoid.srv/web 
 03/08 20:32:03 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:02 [1]...pp.WebAppResource [800]: Starting WebApp: com.zfabrik.samples.calculator/web 
 03/08 20:32:03 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:02 [1]...pp.WebAppResource [800]: Done starting Web App (/calc): com.zfabrik.samples.calculator/web 
 03/08 20:32:03 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:02 [1]...pp.WebAppResource [800]: Starting WebApp: com.zfabrik.dev.javadoc/web 
 03/08 20:32:03 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:03 03/05 10:47:02 [1]...pp.WebAppResource [800]: Done starting Web App (/javadoc): com.zfabrik.dev.javadoc/web 
 03/08 20:32:04 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:04 03/05 10:47:02 [1]...pp.WebAppResource [800]: Starting WebApp: com.zfabrik.admin/web 
 03/08 20:32:04 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:04 03/05 10:47:02 [1]...pp.WebAppResource [800]: Done starting Web App (/adm): com.zfabrik.admin/web 
 03/08 20:32:04 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:04 03/05 10:47:02 [1]...stemStateResource [800]: Attained system state: environment/webWorkerUp 
 03/08 20:32:04 03/05 10:47:02 [19]...ent/webWorker@0.2 [800]: 03/08 20:32:04 03/05 10:47:02 [1]...worker.WorkerSoul [800]: Completed worker process initialization 
 03/08 20:32:04 03/05 10:47:02 [1]...stemStateResource [800]: Attained system state: com.zfabrik.boot.main/home_up 
 03/08 20:32:04 03/05 10:47:02 [1]...hers.HomeLauncher [800]: Completed home process initialization 

 press (q)uit, (c)omponents, (f)oundation props, (s)ystem props, s(y)nc repo, (v)erify, (g)c:> 

 </pre> 

 *Note:* On first startup the runtime needs to clone (and so download) its base repository ("z2-base.base":https://redmine.z2-environment.net/projects/z2-base/repository/base). Dependending on your network bandwidth this may require anything between a few seconds to some minutes. Subsequent startups will not require this step again.  

 When you see the prompt above, the z2-Environment is up and running and excepting requests on localhost port 8080. To verify, open the administration page at http://localhost:8080/adm. Use username *z** ("z" followed by an asterisk) and password *z*. 

 Essentially the same procedure is used to install the z2-Environment in production. From a system installation point of view, checking out a core distribution as we just did is all that needs to be done. 

 On the next page we will do some first development step with z2 in combination with the Eclipse IDE.  

 As it is handy to run the z2 server from inside Eclipse, so you should stop the running server now by pressing 'q'. 

 [[Step 3 - First steps with Z2 on Git|&raquo; Step 3 - First steps with Z2 on Git]]