首页 技术 正文
技术 2022年11月15日
0 收藏 689 点赞 2,868 浏览 14793 个字

Welcome to the iceScrum iceScrum install guide. If you don’t want to manage your own iceScrum installation, you may want to consider our Cloud offers (you can try iceScrum Cloud for free!)

Introduction

If you are new to iceScrum, you may want to use the iceScrum Server desktop application. It requires no computing skills and will allow you to try iceScrum easily .

However, this application is not suitable for production purposes. That’s why we recommend you to follow this guide to install iceScrum manually in order to use it in a real production context.

Installing and configuring the server environment (application server, database, configuration) may require advanced computing skills. Kagilum provides install services, including custom configuration, and remote installation, if you are interested, feel free to contact us.

Hardware requirements

Please note that hardware requirements highly depend on your use of the tool (total number of users, number of concurrent users, other applications running on your machine…).

However, here is an estimated minimal server configuration:
Processor: a modern one, e.g. 2GHz+, 2+ cores
RAM: 2GB+ (iceScrum requires at least 768MB but you also need RAM for the OS, other applications etc.)
Hard disk: 10GB+ (iceScrum itself doesn’t require
much space but you need space for the OS, DB, application server, user
attachments etc.)

Software requirements

Operating system

We recommend the use of Ubuntu 12.04 LTS (Long Term Support).

However, iceScrum can be used with other Linux distributions, Windows
and Mac OS. If you use Windows or Mac OS, you may be interested in the iceScrum Server desktop application.

Java

iceScrum requires Java 6 or 7. Please note that early versions of Java 6 may not work properly and that Java 8 support is planned but not available yet.

You will also need to ensure that the JAVA_HOME environment variable is defined and points to the Java installation directory (which is the directory that contains the bin directory so it is NOT the bin directory itself).

Application server

iceScrum is packaged as a Java Web Application ARchive (WAR). This
WAR needs to be run in a Servlet container compatible with Servlet 3.0.
We recommend the use of Tomcat,
a widely used open source Servlet container. If needed, you can use
another application server (e.g. Jetty) but this guide explains the
install procedure for Tomcat only.

We will use the name tomcatDir to represent the directory where Tomcat is installed. The user who starts Tomcat must have write permissions on tomcatDir.

Here are the supported Tomcat version, and the manual operations required to use them:
Tomcat 7 (7.0.23 or greater), recommended: you need to remove the tomcatDir/lib/tomcat-jdbc.jar library.
– Tomcat 6 (6.29 or greater): you need to add the geronimo-servlet_3.0_spec-1.0.jar library to the tomcatDir/lib/ directory.

Please note that Tomcat 8 support is planned but not available yet.

Application server

Configuration

First, you need to configure the Tomcat server itself. In the tomcatDir/conf/server.xml file, configure the connector to use the NIO protocol and set the port to be used for iceScrum (start with the port 8080 if it is available, you will be able to change it later):

server.xml configuration
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"           connectionTimeout="2000" maxThreads="500" URIEncoding="UTF-8"/>

If you use an Apache server as a frontend proxy for your Tomcat server, you will need to use mod_proxy_http with for example the following configuration for your virtualHost:

ProxyRequests OffProxyPreserveHost OnProxyStatus OnProxyPass       /icescrum/         http://localhost:8080/icescrum/ProxyPassReverse    /icescrum/         http://localhost:8080/icescrum/ 

iceScrum is not compatible with mod_proxy_ajp as it doesn’t support HTTP streaming / push.

Then, you need to configure the CATALINA_OPTS environment variable
(if you use Jetty, define the JAVA_OPTIONS variable instead). A good
place to define it is a tomcatDir/bin/setenv.sh script (setenv.bat for Windows), please read the Tomcat documentation for more information.

Add the following settings to the CATALINA_OPTS variable:

Log directory (by default it will use the logs directory in the current path)
-Dicescrum.log.dir=/path/to/dir/where/i/can/write/
Timezone (has to be UTC)
-Duser.timezone=UTC
Config file (see the Settings section)
-Dicescrum_config_location=/path/to/dir/where/i/can/write/config.groovy
Maximum Java heap size (at least 512 Mo)
-Xmx512m
Maximum Permanent Generation size (at least 256 Mo)
-XX:MaxPermSize=256m

The following flags are usually already configured by default, but we
recommend that you check that they are provided to the JVM:

Headless mode (required for iceScrum pdf/doc/… exports)
-Djava.awt.headless=true
Server mode
-server
Install the iceScrum WAR

You can choose either iceScrum or iceScrum Pro. iceScrum Pro is an enhanced version that includes support and additional features dedicated to organizations.

Once you have chosen and downloaded the WAR file, move it to the tomcatDir/webapps/ directory.

Configure iceScrum

If you want to change config in a nice user interface and to have your changes taken into account immediately, have a look at iceScrum Pro.

If you don’t use iceScrum Pro, you have to create a file called config.groovy
that follows the Groovy format. The path of this file must be defined
in your CATALINA_OPTS (refer to the application configuration section).
We recommend that you put it in your home folder (avoid any tomcat
folder). All config changes need an application restart to apply if the
server is running.

iceScrum Pro

If you are an iceScrum Pro user, you won’t need to edit a config
file. Settings can be edited by the administrator through a nice user
interface. Please refer to the iceScrum Pro settings documentation.

Additionally, iceScrum Pro features come with their own settings when needed. Please refer to the iceScrum Pro features documentation for more information.

Config format

iceScrum config must follow the Groovy format:

// Inline comment/*     Block comment*/key = value            // For booleans and numbers valueskey = "string value"   // For strings values

All paths in your config.groovy must use ‘/’ (forward slash)

You may find old config examples where string values have no quotes, when iceScrum used the Properties format (.properties). This format is now deprecated. Look at Upgrade config.properties to config.groovy format

Application settings

Here are the available application settings with their default value, given in the Groovy format (.groovy):

Project
icescrum.project.import.enable = trueicescrum.project.export.enable = trueicescrum.project.creation.enable = trueicescrum.project.private.enable = trueicescrum.project.private.default = false
Users
icescrum.gravatar.secure = falseicescrum.gravatar.enable = falseicescrum.registration.enable = trueicescrum.login.retrieve.enable = true
Alerts
icescrum.auto_follow_productowner = trueicescrum.auto_follow_stakeholder  = trueicescrum.auto_follow_scrummaster  = trueicescrum.alerts.errors.to = "dev@icescrum.org"icescrum.alerts.subject_prefix = "[icescrum]"icescrum.alerts.enable = trueicescrum.alerts.default.from = "webmaster@icescrum.org"
Attachments
icescrum.attachments.enable = true
Technical Settings
Server URL
grails.serverURL = "http://localhost:8080/icescrum"                   /* Changing the port will require to change                      it in the Tomcat server.xml Connector*/
Logging (for debug purposes)
icescrum.debug.enable = falseicescrum.securitydebug.enable = false
Working directory
icescrum.baseDir = "<yourHome>/icescrum"                   /* Use a custom directory where Tomcat has write rights                      (not webapps!!). Path must use '/' (forward slash) */
Cross-domain (CORS) support for API
icescrum.cors.enable = true  /* CORS is enabled by default                                However, it's enabled only for projects                                 where web services are enabled */icescrum.cors.allow.origin.regex = "*"  /* Use double backslash for escaping                                           e.g. (http://|.+\\.)mydomain\\.com */
Mail server (These exemple values aren’t set by default)
grails.mail.host = "smtp.gmail.com"grails.mail.port = 465grails.mail.username = "username@gmail.com"grails.mail.password = "mypassword"grails.mail.props = ["mail.smtp.auth":"true",        "mail.smtp.socketFactory.port":"465",        "mail.smtp.socketFactory.class":"javax.net.ssl.SSLSocketFactory",        "mail.smtp.socketFactory.fallback":"false"]         /* The props are required for SSL connections */

Database

iceScrum comes with an embedded HSQLDB database so you can try iceScrum without needing to install nor configure a DBMS. The default HSQLDB configuration is NOT suitable for production environments in terms of reliability and performances.

This configuration needs to be set in the config file (please refer
to the above section). Any change will require you to restart your
server if it is running.

Don’t forget to define a sensible charset/collation configuration when creating an empty DB in a custom DBMS. We recommend the use of UTF-8, which allows a wide range of user input.

HSQLDB

HSLQLDB is the default DB in iceScrum. It is bundled so it is
possible to try iceScrum without installing a DBMS. The DB is stored as a
script file in your file system.

Your database structure and data is stored as SQL statements in a file is called prodDba.script and prodDba.properties that are located in the directory where you started Tomcat from. To backup your DB, just keep a copy of these files.

MySQL

The MySQL JDBC connector is included in iceScrum. Consequently, you just have to configure the connection in your config file.

MySQL5 (with InnoDB storage engine) example settings, assuming an empty icescrum database
dataSource.dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"dataSource.driverClassName = "com.mysql.jdbc.Driver"dataSource.url = "jdbc:mysql://localhost:3306/icescrum?useUnicode=true&characterEncoding=utf8"dataSource.username = "root"dataSource.password = "myDbPass"
Oracle

Oracle support is available only for iceScrum Pro.

The Oracle JDBC connector doesn’t come with iceScrum so you will have to download it manually and put it in tomcatDir/lib.

Oracle 11g XE example settings
dataSource.dialect = "org.hibernate.dialect.Oracle10gDialect"                     // use this dialect even for greater versionsdataSource.driverClassName = "oracle.jdbc.driver.OracleDriver"dataSource.url = "jdbc:oracle:thin:@localhost:1521:XE"dataSource.username = "sa"dataSource.password = "myDbPass"
Other DBMS

iceScrum also supports PostgreSQL and SQL Server. The corresponding
JDBC connector doesn’t come with iceScrum so you will have to download
it manually and put it in tomcatDir/lib.

PostgreSQL example settings, assuming an empty icescrum database
dataSource.driverClassName = "org.postgresql.Driver"dataSource.url = "jdbc:postgresql://localhost:5432/icescrum"dataSource.username = "postgres"dataSource.password = "myDbPass"
SQLServer example settings, assuming an empty icescrum database
dataSource.driverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"dataSource.url = "jdbc:sqlserver://localhost:1433;databaseName=icescrum"dataSource.username = "sa"dataSource.password = "myDbPass"

Start iceScrum

Once everything is configured (Tomcat, settings, DB…), you can start the Tomcat server by running the tomcatDir/bin/startup.sh script (startup.bat for Windows). Tomcat will start iceScrum automatically if the WAR is found in the tomcatDir/webapps/ directory.

It may take some time to start it for the first time. When the server
is started, enter the iceScrum URL (corresponding to the Server URL you
defined) in your favorite browser.

First, you need to register: click on “Register”, fill in the form and validate. Follow the getting started guide to enjoy the great iceScrum features!

Troubleshooting

If you find an unexpected behaviour, please read the following information.

Support

You may want to get help for your install and configuration. iceScrum developers can help you! We can install and configure your iceScrum server (contact us) and iceScrum Pro comes with dedicated support (email, skype, phone).

Common issues

Related to configuration (DB, emails, etc.):
First, verify iceScrum is using your configuration : the config file
used is mentioned in the tomcat standard output. If so, it may be not
well formatted so check again the config format. You can also try a
trivial setting (like disabling registration) and see if it works. If
so, the config file is parsed properly so your specific setting may be
wrong. Please try with trivial values (e.g. Gmail for emails) to see if
the problem comes from your values.

Related to exports (PDF etc.):
Ensure that your JVM is configured in headless mode as explained in this
guide and that you don’t use a not supported application server such as
Tomcat8 or an unsupported JDK.

Related to special character input (when creating items or importing a project):
Ensure that your server DB has a sensible charset/collation as suggested in this guide. We recommend the use of UTF-8.

Related to network (DB, LDAP, emails, push):
If you use a proxy or a firewall, it may be the reason why it doesn’t work.

Related to server URL (attachments, redirection after logging in, etc.):
If defined a custom URL (domain, port), please ensure that your defined the Server URL setting and the proper tomcat connector.

Related to SSL:
iceScrum does work with SSL (we are sure about that because iceScrum
Cloud uses SSL). Don’t forget to change the Server URL setting. If SSL
still doesn’t work, please check the config of your proxy (Nginx and
Apache should work fine, if configured properly).

Common errors in logs:

java.lang.NoClassDefFoundError: javax/servlet/http/Part:
You application server doesn’t provide native support to Servlet 3.0. Tomcat 6 users, please refer to the software requirements section.

java.lang.ClassNotFoundException: org.hsqldb.jdbcDriver (or com.mysql.jdbc.Driver)
If you use Tomcat 7, you should remove the tomcat-jdbc.jar library from the tomcatDir/lib folder as explained in the software requirements section.

Infos: validateJarFile(/var/lib/tomcat7/webapps/icescrum/WEB-INF/lib/geronimo-servlet_3.0_spec-1.0.jar) – jar not loaded
This message can be ignored. Geronimo-servlet is here to provide compatibility with Tomcat 6.

“Unknown column ‘text_as’” or “Unknown column ‘added’” on startup, marked as ERROR:
These errors can be ignored. They are not actual errors: the column are
missing because we removed them when migrating the database structure.
The queries remain in order to allow migration from former versions.

java.lang.NoSuchFieldException: count:
This error can be ignored. It’s a minor compatibility issue between the
version of the programming language iceScrum is written in (Groovy) and
Java 7.

java.lang.NullPointerException on CoyoteAdapter:
Your Tomcat 7 version is probably outdated, please refer to the software requirements section.

Error messages in the Tomcat process when shutting down iceScrum:
it’s a known problem that shouldn’t affect your application. We
recommend that you check that the Java process has been really killed.

If you didn’t find the cause of your problem, please read the following sections about logs.

Logging

You should find a logs directory in the directory where you started Tomcat from, or in the icescrum.log.dir if you defined it in your CATALINA_OPTS.

You may want to enable more log information. If you are using
iceScrum Pro, you have to enable verbose logging in the settings
administration. Otherwise, you have to add the following line to your
settings:

Enable verbose logging
icescrum.debug.enable = true

Then, please have a look at the icescrum.log file.

Upgrade config.properties to config.groovy format

If your current config file is called config.properties, you will have to follow these instructions:

– Copy the config.properties file and name the copy: config.groovy.
– Open your freshly created config.groovy file and change the content as follows:

Where you have String value, wrap the value with double quotes.
Additionally, comment syntax has changed so you will have to replace all
the # by //. For instance, when you had:

# Data SourcedataSource.driverClassName=com.mysql.jdbc.Driver

Now you will have:

// Data SourcedataSource.driverClassName="com.mysql.jdbc.Driver"

If you have key/value with Boolean or Number values, no change is required.

icescrum.registration.enable=truemail.port=25

Then:
– Delete or move your old config.properties file
– Don’t forget to update your config location if it is defined:

-Dicescrum_config_location=myLocation/config.groovy
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,999
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,511
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,357
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,140
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,770
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,848