V5.1 with Ubuntu Bionic Beaver (18.04)

[image:ubuntu-logo]

This page explains how to install ]project-open[ V5.1 on Ubuntu Bionic Beaver LTS (18.04)  64bit.

Please Note:

Basic Installation

These instructions assume that you have already installed Bionic Beaver.

Become "root"

sudo su -

Create the "projop" user
Note: Please don't change (at the moment) the name or the home directory (/web/projop/) of the new user. More than 20 different files reference the location, and the probability is very high that might miss one of them...

mkdir /web
mkdir /web/projop
groupadd projop
useradd -g projop -d /web/projop -m -s /bin/bash projop
chown -R projop:projop /web/projop/

Install required packages

Please install the packages below.

apt-get install git-core emacs-nox unzip zip make wwwconfig-common nginx jodconverter ldap-utils \
postgresql postgresql-doc postgresql-client postgresql-client-common \
postgresql-contrib ghostscript gsfonts imagemagick graphviz libcupsimage2 \
libreoffice-writer libreoffice-draw libreoffice-java-common

Get the ]project-open[ Linux installer

As user projop proceed:

su - projop
git clone https://gitlab.project-open.net/project-open/installer-linux.git
cd installer-linux; mv * ..; mv .b* ..; mv .g* ..
cd ~; rmdir installer-linux
cd ~/packages/
bash ~/bin/git-clone-vanilla.sh

Setup the PostgreSQL database 

Setup database starting as user "root":

su - postgres
psql --version                                       # You should seed something like "psql (PostgreSQL) 10.15"
createuser -s projop
exit

Create the PostgreSQL database and load the ]po[ "Tigerpond" demo data:

su - projop
createdb --owner=projop --encoding=utf8 projop
zcat ~/pg_dump.vanilla.sql.gz | psql > import.log 2>&1 

Loading the database dump may take 5-300 seconds, depending on the speed of your server. This is a good benchmark. Servers with >20 seconds are only suitable for smaller companies. Please see our benchmark page .

Review the ]po[ configuration file

Please review the configuration with your preferred editor:

su - root
mv ~projop/ns /usr/local/

Please modify the following entry and enter the URL that you will use to access the server.
If you are just testing locally, that may be "localhost". Otherwise please use the fully qualified hostname.

  • set hostname "project-open.yourdomain.com"

Install NaviServer

Copy the NaviServer to /usr/local/:

su - root
mv ~projop/ns /usr/local/

Start ]project-open[ manually

At this point you should be able to manually start ]project-open[ for the first time:

su - root
/usr/local/ns/bin/nsd -f -t /web/projop/etc/config.tcl -u projop -g projop

]po[ V5.1 should take 5s to 20s to write out some ~40.000 lines before the line appears "[...] Notice: nssock: listening on 0.0.0.0:8000".

If there are much less than 40.000 lines please check for lines including "Error:" or "Warning:".

Now point your favourite Web browser to http://localhost:8000/ and login as "sysadmin@tigerpond.com" / "system". You should see the first page with the configuration wizard. Please do not continue here at the moment, because we still need to fix several issues before ]po[ will run as it should.

You can stop the ]po[ server in the terminal with Ctrl-C.

Automate NaviServer Startup

Create a new file /lib/systemd/system/projop.service with the following content:  

[Unit]
Description=Project Open as user %I
After=postgresql.service network.target
Wants=postgresql.service

[Service]
Type=forking
PIDFile=/web/%i/log/nsd.pid

ExecStartPre=/bin/rm -f /web/%i/log/nsd.pid
ExecStart=/usr/local/ns/bin/nsd -t /web/%i/etc/config.tcl -u %i -g %i &
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s 9 $MAINPID

Restart=always
KillMode=process

[Install]
WantedBy=multi-user.target

Please execute the following commands in order to activate the configuration:

systemctl daemon-reload
systemctl enable po@projop
systemctl start po@projop

You can check if NaviServer is running by monitoring it's error file (debugging is switched on by default): 

tail -f /web/projop/log/error.log 

Also, check if a process called "nsd" is listening on port 8000:

netstat -nlp | grep nsd 

Fix workflow rendering

The ]po[ dynamic workflow requires the package "graphviz" to be installed and the "dot" executable in the folder  /usr/local/bin/dot. However, Ubuntu by default installs the binary in /usr/bin/dot, so please create a symbolic link in the expected location

cd /usr/local/bin
ln -s /usr/bin/dot

Additional Configurations (Optional)

For additional steps please see the [CentOS / RHEL 8 installer] pages. You will find:

  • Install NGINX on port 80 and 443 with support for SSL via Let's Encrypt
  • Install LibreOffice in order to print ]po[ financial document templates
  • Setup Postfix for sending out notification emails
  • Optimization of NaviServer and PostgreSQL
  • Automatic backup
  • Integration with Microsoft Active Directory via ldapsearch

FAQs, Documents and Issues Related to Bionic Beaver 

Did you encounter any issues? Did you successfully install ]project-open[?

Please let us know for what purpose you want to use ]project-open[, and we provide you with half a day of free training or consulting if we publish a Success Story together.

  1. Search your ~projop/log/error.log file for ocurrences of the string “Error:” (upper case “E” and a colon as the last characters). Errors about “translation not found” are OK, but everything else is suspicious.
  2. Please check our FAQ section as a first step.
    Here you will find tips for diagnosing and debugging issues.
  3. Try searching for key words included in your issue here on www.project-open.org  using the search box on the top right of this page.
  4. Please visit our Open Discussions  forum at SourceForge and search for your issue. 
  5. Please check the Ubuntu Precise Pangolin thread  .
  6. If you still haven't found anything, please post into the thread .
  7. The ]project-open[ core team provides training, professional support and consulting services. Please contact us if you want to use ]po[ for more then a dozen of users.
  Contact Us
  Project Open Business Solutions S.L.

Calle Aprestadora 19, 12o-2a

08902 Hospitalet de Llobregat (Barcelona)

Spain

 Tel Europe: +34 609 953 751
 Tel US: +1 415 200 2465
 Mail: info@project-open.com