<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Oad</id>
	<title>Hostsharing Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Oad"/>
	<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Spezial:Beitr%C3%A4ge/Oad"/>
	<updated>2026-07-27T23:49:30Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=OpenProject_installieren&amp;diff=7606</id>
		<title>OpenProject installieren</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=OpenProject_installieren&amp;diff=7606"/>
		<updated>2026-07-24T09:58:48Z</updated>

		<summary type="html">&lt;p&gt;Oad: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemein ==&lt;br /&gt;
OpenProject ist eine umfangreiche Projektmanagement-Software.  Die Software ist multiprojektfähig;  für jedes Projekt stehen unter anderem folgende Werkzeuge zur Verfügung:&lt;br /&gt;
* Wiki&lt;br /&gt;
* Vorgangsverfolgung (Ticketsystem, Issue Tracker)&lt;br /&gt;
* Zeiterfassung&lt;br /&gt;
* Dokument- und Dateiverwaltung&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung beschreibt, wie man OpenProject auf der Managed Hosting Plattform von Hostsharing installieren kann. OpenProject lässt sich in jedem Managed Webspace betreiben.&lt;br /&gt;
&lt;br /&gt;
Die Anleitung wurde für OpenProject Version 11 erstellt.&lt;br /&gt;
&lt;br /&gt;
== Ansible Skript ==&lt;br /&gt;
&lt;br /&gt;
Alternativ zur manuellen Installation, die in diesem Wiki Artikel beschrieben wird, gibt es ein&lt;br /&gt;
Ansible Skript, das die Installationsschritte für OpenProject automatisiert durchführt.&lt;br /&gt;
&lt;br /&gt;
Die Quellen für das Ansible Skript können hier eingesehen werden: https://codeberg.org/tpokorra/hs.ansible/src/branch/main/playbooks/openproject&lt;br /&gt;
&lt;br /&gt;
== Vorbereitungen ==&lt;br /&gt;
&lt;br /&gt;
=== Service-User, Domain und Datenbank ===&lt;br /&gt;
&lt;br /&gt;
Mit Hilfe von HSAdmin werden angelegt:&lt;br /&gt;
# Ein User als Service-User mit &#039;&#039;/bin/bash&#039;&#039; als Shell, zum Beispiel Beispiel: &#039;&#039;xyz00-project&amp;quot;&lt;br /&gt;
# Eine Domain mit &#039;&#039;xyz00-project&#039;&#039; als Domain-Administrator, zum Beispiel &amp;quot;prj.example.com&amp;quot;&lt;br /&gt;
# Einen Postgresql-User &#039;&#039;xyz00_dbuser&#039;&#039; mit Passwort &#039;&#039;meinPasswort&#039;&#039;&lt;br /&gt;
# Eine Postgresql-Datenbank &#039;&#039;xyz00_prjdb&#039;&#039; mit Datenbank-Owner &#039;&#039;xyz00_dbuser&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Vorbereitung des Webspace ===&lt;br /&gt;
&lt;br /&gt;
Die &amp;quot;leichtgewichtige&amp;quot; Subdomain &amp;quot;www&amp;quot; wird gelöscht. Ebenso die &#039;&#039;.htaccess&#039;&#039;-Datei mit der Weiterleitung dorthin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
xyz00@h20 $ sudo -u xyz00-project -i&lt;br /&gt;
xyz00-project@h20:~$ cd ~/doms/projekt.example.com/&lt;br /&gt;
xyz00-project@h20:~/doms/projekt.example.com$ rm -rf subs/www/ subs-ssl/www/ htdocs-ssl/.htaccess &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Installation von Ruby ===&lt;br /&gt;
&lt;br /&gt;
Weiterhin benötigt OpenProject eine geeignete Version der Programmiersprache Ruby.&lt;br /&gt;
&lt;br /&gt;
Die gewünschte Version kann hier abgelesen werden: https://github.com/opf/openproject/blob/stable/11/.ruby-version&lt;br /&gt;
&lt;br /&gt;
Die Installation-Anleitung für OpenProject schlägt für die Installation &#039;&#039;rbenv&#039;&#039; vor.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
xyz00-project@h20:~/doms/projekt.example.com$ cd&lt;br /&gt;
xyz00-project@h20:~$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv&lt;br /&gt;
xyz00-project@h20:~$ touch .profile&lt;br /&gt;
xyz00-project@h20:~$ chmod u+x .profile&lt;br /&gt;
xyz00-project@h20:~$ echo &#039;export PATH=&amp;quot;$HOME/.rbenv/bin:$PATH&amp;quot;&#039; &amp;gt;&amp;gt; ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ echo &#039;eval &amp;quot;$(rbenv init -)&amp;quot;&#039; &amp;gt;&amp;gt; ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build&lt;br /&gt;
xyz00-project@h20:~$ rbenv install 2.7.4&lt;br /&gt;
xyz00-project@h20:~$ rbenv rehash&lt;br /&gt;
xyz00-project@h20:~$ rbenv global 2.7.4&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Als Test bitte aufrufen: &#039;&#039;ruby -v&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Die Anzeige sollte etwa das Folgende enthalten:&lt;br /&gt;
ruby 2.7.4pXYZ (....) [x86_64-linux]&lt;br /&gt;
&lt;br /&gt;
=== Installation von Node ===&lt;br /&gt;
&lt;br /&gt;
Die Installation-Anleitung für OpenProject schlägt für die Installation &#039;&#039;nodenv&#039;&#039; vor. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ git clone https://github.com/OiNutter/nodenv.git ~/.nodenv&lt;br /&gt;
xyz00-project@h20:~$ echo &#039;export PATH=&amp;quot;$HOME/.nodenv/bin:$PATH&amp;quot;&#039; &amp;gt;&amp;gt; ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ echo &#039;eval &amp;quot;$(nodenv init -)&amp;quot;&#039; &amp;gt;&amp;gt; ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~$ git clone git://github.com/OiNutter/node-build.git ~/.nodenv/plugins/node-build&lt;br /&gt;
xyz00-project@h20:~$ nodenv install 12.18.4&lt;br /&gt;
xyz00-project@h20:~$ nodenv rehash&lt;br /&gt;
xyz00-project@h20:~$ nodenv global 12.18.4&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ein Test mit &#039;&#039;node --version&#039;&#039; solte anzeigen: v12.18.4&lt;br /&gt;
&lt;br /&gt;
== Installation und Konfiguration ==&lt;br /&gt;
&lt;br /&gt;
=== Installation von OpenProject ===&lt;br /&gt;
&lt;br /&gt;
Wir installieren die OpenProject Community Edition. siehe https://github.com/opf/openproject&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ git clone https://github.com/opf/openproject.git --branch stable/11 --depth 1&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~$ gem update --system&lt;br /&gt;
xyz00-project@h20:~$ gem install bundler&lt;br /&gt;
xyz00-project@h20:~$ bundle update --bundler&lt;br /&gt;
xyz00-project@h20:~$ bundle config set deployment &#039;true&#039;&lt;br /&gt;
xyz00-project@h20:~$ bundle config set without &#039;mysql2 sqlite development test therubyracer docker&#039;&lt;br /&gt;
xyz00-project@h20:~$ bundle install&lt;br /&gt;
xyz00-project@h20:~$ npm install&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration von OpenProject ===&lt;br /&gt;
&lt;br /&gt;
Erstelle eine Konfiguration für den Datenbank-Zugriff in der Datei &#039;&#039;config/database.yml&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ cp config/database.yml.example config/database.yml&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der neuen Datei &#039;&#039;database.yml&#039;&#039; wird die mit HSAdmin angelegte PostgreSQL-Datenbank eingetragen:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot; line&amp;gt;&lt;br /&gt;
production:&lt;br /&gt;
  adapter: postgresql&lt;br /&gt;
  encoding: unicode&lt;br /&gt;
  host: localhost&lt;br /&gt;
  database: xyz00_prjdb (wie oben angegeben)&lt;br /&gt;
  pool: 10&lt;br /&gt;
  username: xyz00_dbuser (wie oben angegeben)&lt;br /&gt;
  password: meinPasswort (wie oben angegeben)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Einträge für &#039;&#039;development&#039;&#039; und &#039;&#039;test&#039;&#039; können gelöscht werden.&lt;br /&gt;
&lt;br /&gt;
Dann wird die Datei &#039;&#039;configuration.yml&#039;&#039; angelegt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot; line&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ cp config/configuration.yml.example config/configuration.yml&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dort erfolgen die Einstellungen für ausgehende E-Mails:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot; line&amp;gt;&lt;br /&gt;
default:&lt;br /&gt;
  log_level: info&lt;br /&gt;
  email_delivery_method: :smtp&lt;br /&gt;
  smtp_address: localhost&lt;br /&gt;
  smtp_port: 25&lt;br /&gt;
  smtp_domain: example.com&lt;br /&gt;
  #smtp_authentication: :login&lt;br /&gt;
  #smtp_user_name: &amp;quot;openproject@example.net&amp;quot;&lt;br /&gt;
  #smtp_password: &amp;quot;my_openproject_password&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Zeilen mit smtp_authentication, smtp_user_name und smtp_password können auskommentiert werden, sie werden in unserem Setup nicht benötigt.&lt;br /&gt;
&lt;br /&gt;
Es muss außerdem vermieden werden, dass beim Hochladen von Dateien in /tmp geschrieben wird. Dazu wird das Verzeichnis $HOME/var/tmp angelegt, und die Datei &amp;lt;code&amp;gt;openproject/config/initializers/tmpdir.rb&amp;lt;/code&amp;gt; mit folgendem Inhalt erstellt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;ruby&amp;quot; line&amp;gt;&lt;br /&gt;
class Dir&lt;br /&gt;
  def self.tmpdir&lt;br /&gt;
    &amp;quot;/home/pacs/xyz00/users/project/var/tmp/&amp;quot;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Einen geheimen Schlüssel erzeugen ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ EDITOR=cat ./bin/rails credentials:edit&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Initialisiere Datenbank und erzeuge Web-Ressourcen ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ export RAILS_ENV=&amp;quot;production&amp;quot;&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ ./bin/rails db:prepare&lt;br /&gt;
xyz00-project@h20:~/openproject$ ./bin/rake assets:precompile&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Anlegen des Administrators ===&lt;br /&gt;
&lt;br /&gt;
Es kann eine Demo Installation installiert werden:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ export RAILS_ENV=&amp;quot;production&amp;quot;&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ LOCALE=en ./bin/rake db:seed&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit wird ein Beispiel-Projekt angelegt, das man wieder löschen kann.&lt;br /&gt;
&lt;br /&gt;
Wichtig ist aber, dass der Benutzer &amp;lt;code&amp;gt;admin&amp;lt;/code&amp;gt; mit dem Passwort &amp;lt;code&amp;gt;admin&amp;lt;/code&amp;gt; angelegt wird. Das Passwort muss bei der ersten Anmeldung geändert werden.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration in Passenger ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/doms/prj.example.com&lt;br /&gt;
xyz00-project@h20:~/doms/prj.example.com$ rm -rf app-ssl htdocs-ssl&lt;br /&gt;
xyz00-project@h20:~/doms/prj.example.com$ ln -s $HOME/openproject app-ssl&lt;br /&gt;
xyz00-project@h20:~/doms/prj.example.com$ ln -s $HOME/openproject/public htdocs-ssl&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Weiterhin muss in einer .htaccess-Datei in diesem Verzeichnis die richtige Umgebung gesetzt sein:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=apache&amp;gt;&lt;br /&gt;
# xyz00-project@h20:~/doms/prj.example.com$ cat .htaccess&lt;br /&gt;
&lt;br /&gt;
SetEnv OPENPROJECT_STORAGE_TMP__PATH /home/pacs/xyz00/users/project/var/tmp/&lt;br /&gt;
SetEnv TMPDIR /home/pacs/xyz00/users/project/var/tmp/&lt;br /&gt;
PassengerRuby /home/pacs/xyz00/users/project/.rbenv/shims/ruby&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Aufsetzen des systemd Timers für Hintergrundprozesse ==&lt;br /&gt;
&lt;br /&gt;
Es werden Benachrichtigungs-E-Mails im Hintergrund verschickt. Dazu muss ein Prozess im Hintergrund gestartet werden. Um Probleme zu vermeiden, dass source nicht zur Verfügung steht, kann der Aufruf in einer eigenen Skriptdatei geschehen, die zwingend mit Bash ausgeführt wird, wo source verfügbar ist.&lt;br /&gt;
&lt;br /&gt;
Datei &#039;&#039;/home/pacs/xyz00/users/project/emailjob.sh&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash line&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
source ~/.profile&lt;br /&gt;
cd ~/openproject&lt;br /&gt;
RAILS_ENV=&amp;quot;production&amp;quot; ./bin/rake jobs:workoff&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Datei &#039;&#039;/home/pacs/xyz00/users/project/jobrestart.sh&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash line&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
source ~/.profile&lt;br /&gt;
cd ~/openproject&lt;br /&gt;
RAILS_ENV=&amp;quot;production&amp;quot;  ./bin/delayed_job restart&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun können die Timer eingerichtet werden:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;~/.config/systemd/user/openproject_emails.service&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=ini line&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=openproject mails&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=oneshot&lt;br /&gt;
ExecStart=/home/pacs/xyz00/users/project/emailjob.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
~/.config/systemd/user/openproject_emails.timer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=ini line&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=openproject mails&lt;br /&gt;
&lt;br /&gt;
[Timer]&lt;br /&gt;
OnCalendar=*:0/2&lt;br /&gt;
Persistent=True&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=timers.target&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit wird der Hintergrundprozess alle 2 Minuten gestartet.&lt;br /&gt;
&lt;br /&gt;
Es gibt noch einen Hintergrundjob, den ich einmal in der Stunde neu starte:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;~/.config/systemd/user/openproject_jobrestart.service&#039;&#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=ini line&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=openproject restart job&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=oneshot&lt;br /&gt;
ExecStart=/home/pacs/xyz00/users/project/jobrestart.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
~/.config/systemd/user/openproject_jobrestart.timer&lt;br /&gt;
&amp;lt;syntaxhighlight lang=ini line&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=openproject restart job&lt;br /&gt;
&lt;br /&gt;
[Timer]&lt;br /&gt;
OnCalendar=*:22&lt;br /&gt;
Persistent=True&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
WantedBy=timers.target&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Timer aktivieren und starten:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash line&amp;gt;&lt;br /&gt;
$ systemctl --user enable openproject_emails.timer&lt;br /&gt;
$ systemctl --user start openproject_emails.timer&lt;br /&gt;
$ systemctl --user enable openproject_jobrestart.timer&lt;br /&gt;
$ systemctl --user start openproject_jobrestart.timer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Upgrade durchführen ==&lt;br /&gt;
&lt;br /&gt;
Die gewünschte Ruby Version kann hier abgelesen werden (ggf. Branch passend wechseln): https://github.com/opf/openproject/blob/stable/11/.ruby-version&lt;br /&gt;
&lt;br /&gt;
Wichtig! OpenProject ist sehr empfindlich darin bspw. von 15.2 -&amp;gt; 15.x (latest) -&amp;gt; 16(.0) oder 16.x upgegraded zu werden, sonst schlagen die DB migrationen fehl. &lt;br /&gt;
&lt;br /&gt;
Die benötigte Nodejs Version kann im git repository in der package.json unter engine abgelesen werden.&lt;br /&gt;
&lt;br /&gt;
Für das Upgrade von OpenProject 11.2.4 auf 11.3.4, musste eine neue Version von Ruby installiert werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd ~/openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ git -C $HOME/.rbenv/plugins/ruby-build pull&lt;br /&gt;
xyz00-project@h20:~/openproject$ rbenv install 2.7.4&lt;br /&gt;
xyz00-project@h20:~/openproject$ rbenv rehash&lt;br /&gt;
xyz00-project@h20:~/openproject$ rbenv global 2.7.4&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ rm -Rf $HOME/.rbenv/versions/2.7.3/  # alte Version kann gelöscht werden&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Weil das Git Repository bei der Erstinstallation nur einen Branch enthielt, muss nun das Repository passend nachgeladen werden (Beispielhaft für den Branch stable/15)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ git remote set-branches --add origin stable/15&lt;br /&gt;
xyz00-project@h20:~/openproject$ git fetch&lt;br /&gt;
xyz00-project@h20:~/openproject$ git checkout stable/15&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nach Verifikation dass das update erfolgreich war, kann der alte Branch gelöscht werden, nach bedarf mit: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ git branch -D old_branch_name&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Generell müssen diese Schritte durchgeführt werden:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
xyz00-project@h20:~$ cd openproject&lt;br /&gt;
xyz00-project@h20:~/openproject$ source ~/.profile&lt;br /&gt;
xyz00-project@h20:~/openproject$ git fetch&lt;br /&gt;
xyz00-project@h20:~/openproject$ git pull&lt;br /&gt;
xyz00-project@h20:~/openproject$ gem update --system&lt;br /&gt;
xyz00-project@h20:~/openproject$ bundle install&lt;br /&gt;
xyz00-project@h20:~/openproject$ npm install&lt;br /&gt;
xyz00-project@h20:~/openproject$ export RAILS_ENV=&amp;quot;production&amp;quot;&lt;br /&gt;
xyz00-project@h20:~/openproject$ ./bin/rake db:migrate&lt;br /&gt;
xyz00-project@h20:~/openproject$ ./bin/rake assets:precompile&lt;br /&gt;
xyz00-project@h20:~/openproject$ touch ~/doms/prj.example.com/app-ssl/tmp/restart.txt&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Falls es ein Update der Ruby Version gab muss die neue Version ggf. noch im HS Admin für Passenger eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
== Referenzen ==&lt;br /&gt;
&lt;br /&gt;
* [https://docs.openproject.org/installation-and-operations/installation/manual/ Anleitung für die manuelle Installation]&lt;br /&gt;
* [https://codeberg.org/tpokorra/hs.ansible/src/branch/main/playbooks/openproject Ansible Playbook für Hostsharing]&lt;br /&gt;
----&lt;br /&gt;
[[Kategorie:HSDoku]]&lt;br /&gt;
[[Kategorie:Installationsanleitungen]]&lt;br /&gt;
[[Kategorie:Ansible Playbook]]&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:RubyOnRails]]&lt;br /&gt;
[[Kategorie:Passenger]]&lt;br /&gt;
[[Kategorie:Projektmanagement]]&lt;br /&gt;
[[Kategorie:Projektverwaltung]]&lt;/div&gt;</summary>
		<author><name>Oad</name></author>
	</entry>
</feed>