Utilizando maintenance branch do LMS Sakai, da versão 2.9, é necessário os seguintes softwares (Alguns softwares são recomendações, como o SO e o SGBD utilizado):
- Sistema operacional *nix, como GNU/Linux ou FreeBSD
- Software de controle de versão Subversion (SVN)
- SGBD MySQL 5 (ou MariaDB)
- Java Development Kit 6 (JDK) da Oracle. Essa é a versão recomendada, mas é possível utilizar OpenJDK 7 e similares
- Gerenciador de projeto e dependências Maven 2
- Servidor Web para Java Servlets Apache Tomcat 5.5 (podese utilizar o 7, contanto que se utilize o classloader do 5.5)
Para a versão nova versão do Readinweb, 4.0.0, os prérequisitos são os mesmos do LMS Sakai, já que a software foi criado como uma ferramenta do mesmo. Assim, para compilar e implantar o software, é necessário colocálo no diretório do código fonte do Sakai juntamente com as outras ferramentas do núcleo do LMS.
Esse guia de instalação é feito em área de usuário, de forma que a instalação não invada área de sistema. Podese rodar o LMS tanto como usuário, respeitando a condição de portas (não podem ser utilizadas portas de sistema) quanto como administrador, inclusive utilizando a porta 80, comum em servidores web. Uma segunda forma de subir o LMS para ser acessado na porta 80 é subindo em uma porta como 8080, em área de usuário e fazer um proxy no Web Server padrão utilizado com subdomínio apropriado.
A instalação do Subversion pode ser feita tanto através das recomendações do próprio site http://subversion.apache.org, quanto do próprio sistema operacional. Após a instalação, faça download do código:
$ svn co https://source.sakaiproject.org/svn/sakai/branches/sakai-2.9.x
É recomendado instalar a versão do JDK da Oracle. Porém é possível instalar a OpenJDK ou afins de acordo com a distribuição. Pra instalar a Oracle JDK 6 ou 7 recomendamos os seguintes guias:
- http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
- http://www.freebsd.org/java
Configure as opções do Java através da variável J AVA_OPTS, elas devem ter os seguintes valores, já considerando as configurações do servidor Tomcat:
$ export JAVA_OPTS="-server -Xmx1028m -X:MaxPermSize=320m \ -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false \
-Djava.awt.headles=true-Dcom.sun.management.jmxremote \
-Dsun.lang.ClasLoader.alowAraySyntax=true \
-Duser.language=pt -Duser.region=BR"
Esse comando pode ser adicionado ao arquivo de s tartup.sh dentro do diretório b in do Tomcat de forma a garantir que as opções sejam utilizadas. Outra forma é col-calas, assim com as do Maven 2, no arquivo .bash_profile
.
Utiliza-se o banco de dados MySQL para instalação do Sakai para esse caso. É possível utilizar outros SGBDs, porém o MySQL foi escolhido em tempo de projeto devido ao seu extenso uso. Uma instalação da própria distribuição é suficiente apra utilização no Sakai.
Após instalação, crie um banco de dados para o Sakai:
$ mysql -uroot -p
mysql> create database sakai default character set utf8;
mysql> grant all privileges on sakai.* to 'sakai'@'localhost' identified by 'password';
mysql> flush privileges;
mysql> quit
Com o Java instalado, pode-se então instalar o Servidor Web. Recomendase a instalação de uma versão não empacotada do servidor que pode ser encontrada no site http://tomcat.apache.org/download-70.cgi, para versão 7.
Após fazer o download, você pode desempacotar o arquivo em seu diretório de preferência, por exemplo, /opt
e fazer algumas configurações básicas
$ cd /opt
$ tar xvpf apache-tomcat-7.0.70.tar.gz
$ ln -s apache-tomcat-7.0.70 tomcat7
$ cd tomcat7`
Edite o arquivo conf/server.xml
alterando a linha que contém < Connectorport="8080"
adicionando URIEncoding="UTF-8"
para fixar o encoding utilizado globalmente para UTF-8, delete as aplicações padrão:
$ rm -rf webaps/*
E por fim altere o classloader
padrão utilizado em conf/catalina.properties
.
Adicione o seguinte à linha que começa com "common.loader=..."
,${catalina.base}/comon/clases/,${catalina.base}/comon/lib/*.jar
Adicione o seguinte a linha que começa com "shared.loader=..."
${catalina.base}/shared/clases/,${catalina.base}/shared/lib/*.jar
Adicione o seguinte a linha que começa com "server.loader=..."
${catalina.base}/server/clases/,
${catalina.base}/server/lib/*.jar
Crie alguns diretórios necessários para rodar a aplicação corretamente:
$ mkdir -p shared/clasesshared/libcomon/clasescomon/libserver/clasesserver/lib
$ mkdir sakai
Primeiro, copie o arquivo de configuração de exemplo de dentro da instalação do Sakai para dentro do diretório Sakai recém criado:
$cp/path/to/sakai/reference/docs/sakai.propertiessakai/
Depois alterase o arquivo para configurações. Uma lista de opções pode ser encontrada em: https://confluence.sakaiproject.org/display/DOC/Sakai+Properties+Reference e as configurações irão variar de acordo com as necessidades do servidor. A configuração de banco de dados ficará parecida com:
# Theusernameandpasword. Thedefaultsarefortheout-of-the-boxHSQLDB. Changetomatch yoursetup.
[email protected]=sakai
[email protected]=senha
## MySQLsetings - makesuretoalterasapropriate
[email protected]=mysql
[email protected]=com.mysql.jdbc.Driver
hibernate.dialect=org.hibernate.dialect.MySQL5InoDBDialect [email protected]=jdbc:mysql:/127.0.0.1:306/sakai?useUnicode=true&characterEncoding =UTF-8
[email protected]=select1fromDUAL [email protected]=TRANSACTION_READ_COMITED`
Para que o Sakai consiga se comunicar com o banco de dados, é necessário que se instale a biblioteca de conexão de banco de dados, ou conector. Para isso, vá em http://dev.mysql.com/downloads/connector/j/, faça download do conector (necesário login), desempacote (será um arquivo j ar) e coloqueo no diretório l ib, da sua instalação do Tomcat.
A versão final do curso Read in Web utiliza Maven 3. É comum que as distribuições tragam a versão mais nova do Maven, logo, é possível que não seja necessário a instalação não empacotada. Caso não haja uma versão empacotada do Maven na versão 3, utilize a página de download e guia no link: h ttp://maven.apache.org/download.cgi
Para evitar problemas de alocação de memória no Maven, alterase a configuração MVN_OPTS para:
$exportMAVEN_OPTS="-Xms256m-Xmx512m-X:PermSize=64m-X:MaxPermSize=128m"
Para compilar o Sakai, entre no diretório do código fonte baixado e compile o código:
$cd/path/to/sakai_2.9.x $mvn-Dfile.encoding=UTF-8-e-Dmaven.test.skip=truecleaninstal
Esse processo pode levar alguns minutos, devido ao fato de que o gerenciador de pacotes Maven irá fazer download dos pacotes e bibliotecas necessárias para compilação das ferramentas. Ao final da compilação, teremos o sakai compilado e colocado no respositório local do Maven localizado em ~/.m2/repository. Nesse mesmo diretório, vamos criar o arquivo s etings.xml, o qual conterá informações para implantação das ferramentas.
$nano~/.m2/setings.xml
Esse arquivo terá o seguinte conteúdo, lembrando que devese substituir os dados necessários para que estejam de acordo com a configuração da instalação do Apache Tomcat
<setingsxmlns="htp:/maven.apache.org/POM/4.0.0" xmlns:xsi="htp:/w.w3.org/201/XMLSchema-instance" xsi:schemaLocation="htp:/maven.apache.org/POM/4.0.0
htp:/maven.apache.org/xsd/setings-1.0.0.xsd">
<profiles> <profile>
<id>tomcat-sakai</id> <activation>
<activeByDefault>true</activeByDefault> </activation>
<properties> <apserver.id>tomcat-sakai</apserver.id> <apserver.home>/opt/tomcat7</apserver.home> <maven.tomcat.home>/opt/tomcat7</maven.tomcat.home>
<sakai.apserver.home> /opt/tomcat7
</sakai.apserver.home> <surefire.reportFormat>plain</surefire.reportFormat>
<surefire.useFile>false</surefire.useFile> </properties>
</profile> </profiles>
</setings>
Temse então o Sakai compilado, o Tomcat e o Maven configurados, assim como o MySQL, vamos então fazer a implantação da aplicação:
$cd/path/to/sakai_2.9.x $mvnsakai:deploy
Esse comando envia as ferramentas que compõe o Sakai para o diretório webapps, dentro da instalação do Tomcat em formato . war. Ao final, rodase o servidor:
$cd/opt/tomcat7/bin $./startup.sh
O Tomcat, com as ferramentas do Sakai, demora cerca de 1 a 2 minutos pra ser inteiramente inicializado. Após a inicializado, pode ser acessado em: htp:/servidor:8080/portal
A instalação do Read in Web, como ferramenta não é muito diferente da instalação do próprio Sakai. Nesse momento, temse quase tudo configurado para download, compilação e implatação do curso.
Primeiramente, desligue o servidor Tomcat:
$cd/opt/tomcat7/bin $./shutdown.sh
Faça o download da ferramenta e coloquea no diretório fonte do Sakai, entre no diretório e execute o comando Maven que resolve as dependencias, compila a ferramenta e implanta no servidor Tomcat:
$cp-rreadinweb/path/to/sakai $cd/path/to/sakai/readinweb $mvn-Dfile.encoding=UTF-8-ecleaninstalsakai:deploy
No arquivo s akai.properties, crie a variável: r eadinweb.upload, que apontará para um caminho no sistema operacional (/ path/to/tomcat/webaps/course-data) acessível via web (h tp:/example.com/course-data, pelo exemplo). Nesse exemplo, utilizamos o próprio T omcat para servir os arquivos, porém, é possível que eles sejam servidos de qualquer servidor web, contanto que seu caminho seja acessivel pelo Sistema Operacional. O Curso Read in Web será carregado automaticamente no processo de instalação. Isso se deve ao fato de que o curso é o principal dentro do contexto do Projeto Read in Web. Para o diretório de dados, será necessário copiar os dados do curso, presentes no diretório data dentro projeto /path/to/readinweb/course-tol/data.
Para criar a documentação para utilização de novos desenvolvedores, basta rodar, no diretório do projeto o comando maven para tal:
$mvn-Dmaven.test.skip=truejavadoc:jarinstal
Setup de instalação para desenvolvedores:
- https://confluence.sakaiproject.org/pages/viewpage.action?pageId=75667802
- https://confluence.sakaiproject.org/display/BOOT/Development+Environment+Setup+Walkthrough
Source install:
Referencias do sakai.properties:
Guia do Administrador de Sistemas para Sakai:
Guia de um Help Desk sobre utilização do Sakai