(Unofficial) D7.2 Developer Edition

This is a step-by-step guide to install D7.2 in a Linux environment with Oracle XE 10.2.0.3 (not supported by 7.2). You should be able to have everything running in 3-4 hours (I did it with 1.5GB ram, if you set it to 4gb it should really be way faster)

This time I didn’t take screenshots, however there’s only one new screen (lockbox configuration) in the installer so there’s no need for screenshots

Environment

Host:
Windows 7 x64 4GB RAM
VMWare Player 6.0.3

Guest:
CentOS 7 x64 40GB HD 1.5GB RAM (if your host has more than 4gb give it at least 4gb ram)
Oracle XE 11.0.2 (not officially supported) / InstantClient 11.0.3 (not officially supported)
Documentum 7.2
Tomcat 8.0.14
/mnt/hgfs/dctm72 as a shared folder with host machine

VM Creation

Mount the CentOS 7 DVD image, boot the machine and follow the steps. Not much to explain here. I used minimal package install to save resources, named the machine vm-dctm72, configure the network and set the root password

OS Configuration

  • Install required packages:

[root@vm-dctm72 ~]# yum install net-tools bash-completion
[root@vm-dctm72 ~]# yum group install “Development Tools”
[root@vm-dctm72 ~]# yum update
[root@vm-dctm72 ~]# yum install kernel-devel
[root@vm-dctm72 ~]# yum group install X\ Window\ System

  • If you need to install VMware tools, this is the moment:

[root@vm-dctm72 ~]# mkdir /mnt/cdrom
[root@vm-dctm72 ~]# mount /dev/cdrom /mnt/cdrom
[root@vm-dctm72 ~]# mkdir /tmp/vmtools
[root@vm-dctm72 ~]# cp /mnt/cdrom/VMwareTools-9.6.4-2441333.tar.gz /tmp/vmtools/
[root@vm-dctm72 ~]# cd /tmp/vmtools/
[root@vm-dctm72 vmtools]# tar -xvf VMwareTools-9.6.4-2441333.tar.gz
[root@vm-dctm72 vmtools]# cd vmware-tools-distrib/
[root@vm-dctm72 vmware-tools-distrib]# ./vmware-install.pl

  • Create dmadmin user:

[root@vm-dctm72 /]# useradd dmadmin
[root@vm-dctm72 /]# passwd dmadmin

Oracle XE setup

  • I copied every installer in $DOCUMENTUM/installers, so:

[dmadmin@vm-dctm72 opt]$ sudo mkdir documentum
[dmadmin@vm-dctm72 opt]$ sudo chown dmadmin.dmadmin documentum
[dmadmin@vm-dctm72 documentum]$ mkdir installers
[dmadmin@vm-dctm72 documentum]$ mkdir product
[dmadmin@vm-dctm72 documentum]$ mkdir product/7.2
[dmadmin@vm-dctm72 installers]$ cp /mnt/hgfs/dctm72/oracle-xe-11.2.0-1.0.x86_64.rpm/Disk1/oracle-xe-11.2.0-1.0.x86_64.rpm .

  • Install needed libraries, run installer, run configuration tool (remember to change the default 8080 port to something else to avoid conflicts with tomcat):

[dmadmin@vm-dctm72 installers]$ sudo yum install libaio bc
[dmadmin@vm-dctm72 installers]$ sudo rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm
[dmadmin@vm-dctm72 installers]$ sudo /etc/init.d/oracle-xe configure

  • Launch sqlplus to enable remote access and remove the password expiration:

[dmadmin@vm-dctm72 installers]$ . /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh

[dmadmin@vm-dctm72 installers]$ /u01/app/oracle/product/11.2.0/xe/bin/sqlplus system
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
quit

Oracle client setup

  • Install required libraries:

[dmadmin@vm-dctm72 installers]$ sudo yum install libXp.x86_64
[dmadmin@vm-dctm72 installers]$ sudo yum install libXp.i686 libXi.i686 libXtst.i686 libXt.i686
[dmadmin@vm-dctm72 installers]$ sudo yum install glibc.i686 libgcc.i686 libstdc++.i686 libaio.i686

  • Configure 32bit libraries:

[dmadmin@vm-dctm72 installers]$ cd /u01/app/oracle/product/11.2.0/xe/
[dmadmin@vm-dctm72 xe]$ sudo mkdir lib32
[dmadmin@vm-dctm72 xe]$ sudo chown oracle.dba lib32
[dmadmin@vm-dctm72 xe]$ sudo cp /mnt/hgfs/dctm72/instantclient-basic-linux-11.2.0.3.0/instantclient_11_2/lib* lib32/
[dmadmin@vm-dctm72 xe]$ cd lib32
[dmadmin@vm-dctm72 lib32]$ sudo ln -s libclntsh.so.11.1 libclntsh.so
[dmadmin@vm-dctm72 lib32]$ sudo ln -s libocci.so.11.1 libocci.so
[dmadmin@vm-dctm72 lib32]$ sudo chown -h oracle.dba *
[dmadmin@vm-dctm72 lib32]$ sudo chown -h oracle.dba libclntsh.so
[dmadmin@vm-dctm72 lib32]$ sudo chown -h oracle.dba libocci.so

Content Server 7.2

Preinstall tasks

  • Configure environment variables:

[dmadmin@vm-dctm72 ~]$ vi .bash_profile

DOCUMENTUM=/opt/documentum
export DOCUMENTUM
DM_HOME=$DOCUMENTUM/product/7.2
export DM_HOME
ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
export ORACLE_HOME
ORACLE_SID=XE
export ORACLE_SID
NLS_LANG=’$ORACLE_HOME/bin/nls_lang.sh’ #be aware of the « special » quotes here
export NLS_LANG
PATH=$ORACLE_HOME/bin:$DM_HOME/bin:$PATH
export PATH
LC_ALL=C
export LC_ALL
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib32
export LD_LIBRARY_PATH

  • Reserve ports for the repository:

[dmadmin@vm-dctm72 ~]$ sudo vi /etc/services
# dctm services
dctm72 49001/tcp # 7.2 Repository native connection
dctm72_s 49002/tcp # 7.2 Repository secure connection

  • Copy installer, extract files, set permissions:

[dmadmin@vm-dctm72 installers]$ cp /mnt/hgfs/dctm72/Content_Server_7.2_linux64_oracle.tar .
[dmadmin@vm-dctm72 installers]$ tar -xvf Content_Server_7.2_linux64_oracle.tar
[dmadmin@vm-dctm72 installers]$ chmod 777 *
[dmadmin@vm-dctm72 installers]$ chmod +x serverSetup.bin

  • Set display to our client IP to allow the X system to work:

[dmadmin@vm-dctm72 installers]$ export DISPLAY=192.168.88.1:0.0

Content Server installation

  • Run the installer, next, next, … and in the last option choose not to configure the repository now

[dmadmin@vm-dctm72 installers]$ ./serverSetup.bin

We need to “workaround” some issues before configuring the repository:

  • Installer cannot find libsasl2.so.2… umm, ok… :

[dmadmin@vm-dctm72 installers]$ sudo ln /usr/lib64/libsasl2.so.3 /usr/lib64/libsasl2.so.2

  • The database version (11.0.2.3 is not supported, as the minimum required version is 11.0.2.4) so let’s cheat. Make a backup of dmdbtest, create a new dmdbtest file and simply write “exit 0”, save the file and go on:

[dmadmin@vm-dctm72 installers]$ mv ../product/7.2/bin/dmdbtest ../product/7.2/bin/dmdbtest.bak
[dmadmin@vm-dctm72 installers]$ vi ../product/7.2/bin/dmdbtest
exit 0
[dmadmin@vm-dctm72 installers]$ chmod 777 ../product/7.2/bin/dmdbtest

  • Now run the repository configuration, configure docbroker and then configure the repository:

[dmadmin@vm-dctm72 installers]$ cd ../product/7.2/install/
[dmadmin@vm-dctm72 install]$ ./dm_launch_server_config_program.sh

Tomcat 8

  • Copy the installer, unzip, move to destination folder, create a symlink for ease of access, change permissions:

[dmadmin@vm-dctm72 tmp]$ cp /mnt/hgfs/dctm72/apache-tomcat-8.0.14.tar.gz .
[dmadmin@vm-dctm72 tmp]$ tar xavf apache-tomcat-8.0.14.tar.gz
[dmadmin@vm-dctm72 tmp]$ sudo mv apache-tomcat-8.0.14 /opt
[dmadmin@vm-dctm72 tmp]$ sudo chown dmadmin.dmadmin -R /opt/apache-tomcat-8.0.14/
[dmadmin@vm-dctm72 tmp]$ sudo ln -s /opt/apache-tomcat-8.0.14/ /opt/tomcat8
[dmadmin@vm-dctm72 tmp]$ sudo chown -h dmadmin.dmadmin /opt/tomcat8

  • Configure the server:

[dmadmin@vm-dctm72 tmp]$ vi /opt/tomcat8/bin/catalina.sh
JAVA_HOME=/opt/documentum/java64/1.7.0_72/
JAVA_OPTS=”-server -Xms256m -Xmx512m -XX:MaxPermSize=256m -Ddfc.properties.file=/opt/documentum/config/dfc.properties”

  • Change firewall configuration:

[dmadmin@vm-dctm72 tmp]$ sudo firewall-cmd –zone=public –add-port=8080/tcp –permanent
[dmadmin@vm-dctm72 tmp]$ sudo firewall-cmd –reload

  • Start the server, test it is working, then stop it before deploying DA

[dmadmin@vm-dctm72 tmp]$ /opt/tomcat8/bin/startup.sh
[dmadmin@vm-dctm72 tmp]$ /opt/tomcat8/bin/shutdown.sh

DA 7.2

  • Copy da.war to webapps:

[dmadmin@vm-dctm72 tmp]$ cp /mnt/hgfs/dctm72/da.war /opt/tomcat8/webapps/

  • Let’s start the configuration with context.xml:

[dmadmin@vm-dctm72 tmp]$ cd /opt/tomcat8/conf/
[dmadmin@vm-dctm72 conf]$ vi context.xml

<Context useHttpOnly="false">
  • Now, catalina.properties:

[dmadmin@vm-dctm72 conf]$ vi catalina.properties
org.apache.jasper.compiler.Parser.STRICT_WHITESPACE=false
jnlp.com.rsa.cryptoj.fips140loader=true

  • web.xml:

[dmadmin@vm-dctm72 conf]$ vi web.xml

<init-param>
            <param-name>enablePooling</param-name>
            <param-value>false</param-value>
        </init-param>
  • server.xml:

[dmadmin@vm-dctm72 conf]$ vi server.xml

  <Connector port="8080" protocol="HTTP/1.1"                connectionTimeout="20000"                redirectPort="8443"                compression="on"                 compressionMinSize="2048"                 compressableMimeType="text/html,text/xml,application/xml,text/plain,text/css,text/                 javascript,text/json,application/x-javascript,application/                 javascript,application/json"                 useSendfile="false" />
  • We need to modify custom/app.xml to disable compression filter, so extract the file, modify, repack the war and delete the extracted file:

[dmadmin@vm-dctm72 conf]$ cd ..
[dmadmin@vm-dctm72 tomcat8]$ cd webapps/
[dmadmin@vm-dctm72 webapps]$ unzip da.war custom/app.xml
[dmadmin@vm-dctm72 webapps]$ vi custom/app.xml

 <compression_filter_enabled>false</compression_filter_enabled>
      </application>

[dmadmin@vm-dctm72 webapps]$ /opt/documentum/java64/1.7.0_72/bin/jar uf da.war custom/app.xml
[dmadmin@vm-dctm72 webapps]$ rm -fr custom

  • And now let’s see if it works:

[dmadmin@vm-dctm72 webapps]$ cd ../bin
[dmadmin@vm-dctm72 bin]$ ./startup.sh

One thought on “(Unofficial) D7.2 Developer Edition

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s