Docker Implementation:
# Create database on existing SQL Server (not being used)
#CREATE DATABASE project;
#CREATE USER ‘project’@’%’ IDENTIFIED BY ‘PASSWORD’;
#GRANT ALL PRIVILEGES ON project.* TO ‘project’@’%’;
# Docker container with self-contained database
docker run –privileged -d -p 3000:80 –name openproject -e SECRET_KEY_BASE=’SECRETKEY’ openproject/community:8
# GMAIL SMTP relay
docker run –privileged -d -p 3000:80 –name openproject
-e SECRET_KEY_BASE=’SECRETKEY’ \
-e EMAIL_DELIVERY_METHOD=smtp \
-e SMTP_ADDRESS=smtp.gmail.com \
-e SMTP_PORT=587 \
-e SMTP_DOMAIN=dragoncoin.com \
-e SMTP_AUTHENTICATION=login \
-e SMTP_ENABLE_STARTTLS_AUTO=true \
-e SMTP_USER_NAME=”[email protected]” \
-e SMTP_PASSWORD=”SECRETKEY” \
openproject/community:8
# Passwords and shits
admin / (default: admin) / PASSWORD
# Required Setup to resolve potential errors
Administration > System Settings > set these values
-
Hostname: project.dragoncoin.com
-
Protocol: https
# OpenProject via Docker with NGINX as proxy
# Create persistent folders on host
mkdir -p /var/lib/openproject/{pgdata,logs,static}
chmod 777 /var/lib/openproject/{pgdata,logs,static}
# Simple run
docker run -d -p 8081:80 -e SECRET_KEY_BASE=secret openproject/community:8
# Run the container
docker run -d -p 8081:80 –name openproject -e SECRET_KEY_BASE=secret \
-v /var/lib/openproject/pgdata:/var/lib/postgresql/9.6/main \
-v /var/lib/openproject/logs:/var/log/supervisor \
-v /var/lib/openproject/static:/var/db/openproject \
openproject/community:8
# Other options, user SendGrid SMTP relay
-e EMAIL_DELIVERY_METHOD=smtp \
-e SMTP_ADDRESS=smtp.sendgrid.net \
-e SMTP_PORT=587 \
-e SMTP_DOMAIN=my.domain.com \
-e SMTP_AUTHENTICATION=login \
-e SMTP_ENABLE_STARTTLS_AUTO=true \
-e SMTP_USER_NAME=”apikey” \
-e SMTP_PASSWORD=”SECRETKEY” \
docker stop openproject
docker start openproject
docker stop openproject && docker rm openproject
Manual installation
groupadd openproject
useradd –create-home –gid openproject openproject
passwd openproject #Input: SECRETPASSWORD
# Miscellaneous Dependencies
yum install -y memcached mysql-community-server mysql-community-client install -y zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libgdbm-dev libncurses5-dev automake libtool bison libffi-dev git curl poppler-utils unrtf tesseract-ocr catdoc libxml2 libxml2-dev libxslt1-dev
# Install Ruby
yum install gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison iconv-devel sqlite-devel
curl -sSL https://rvm.io/mpapis.asc | gpg2 –import –
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 –import –
curl -L get.rvm.io | bash -s stable
mysql -udragoncoin -p
CREATE DATABASE openproject CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER ‘openproject’@’%’ IDENTIFIED BY ‘PASSWORD’;
GRANT ALL PRIVILEGES ON openproject.* TO ‘openproject’@’%’;
FLUSH PRIVILEGES;
QUIT;
su openproject
git clone https://github.com/nodenv/nodenv ~/.nodenv
echo ‘export PATH=”$HOME/.nodenv/bin:$PATH”‘ >> ~/.profile
echo ‘eval “$(nodenv init -)”‘ >> ~/.profile
source ~/.profile
git clone git://github.com/OiNutter/node-build.git ~/.nodenv/plugins/node-build
nodenv install 8.12.0
nodenv rehash
nodenv global 8.12.0
cd ~
git clone https://github.com/opf/openproject-ce –branch stable/8 –depth 1
cd openproject-ce
gem install bundler
bundle install –deployment –without mysql2 sqlite development test therubyracer docker
npm install
# Setup the Repo
wget -O /etc/yum.repos.d/openproject-ce.repo
# Install app
yum install openproject
openproject configure
# Reuse existing database > MySQL port 3306 > password PASSWORD
# Skip Apache2 installation wizard
# Server path prefix: /var/www/project/
# Path to SSL certificate: /etc/letsencrypt/live/dragoncoin.com
/
# Path to SVN: /var/db/openproject/svn/
# Path to Git: /var/db/openproject/git/
# Path to git-http-backend: /usr/lib/git-core/git-http-backend/
# Install memcached
# Set firewall
firewall-cmd –zone=public –add-port=6000/tcp –permanent
# start openproject
openproject restart
# Test
curl localhost:6000