Server/srs15

Aus Wiki StuRa HTW Dresden
Zur Navigation springen Zur Suche springen

Betriebssystem

Server/srs1337
Jail FreeNAS
FreeBSD

Verwendungszweck

Erstellung

Klicken der Jail über die Oberfläche von FreeNAS auf Server/srs1337
  • Jails ausgewählt
    • Add Jail ausgewählt
      • bei Jail Name: srs15 eingetragen
      • OK geklickt
        Jail wurde erstellt
    • View Jails ausgewählt
      • Zeile der Jail (Bezeichnung der Spalte) srs15 angewählt
        • Edit Jail (Werkzeugschlüssel) geklickt
          • bei IPv4 adress: ersetzend 141.56.50.15 eingetragen
          • OK geklickt
        • Edit Jail (Werkzeugschlüssel) geklickt
          • Advanced Mode geklickt
            • bei IPv4 default gateway: 141.56.50.254 eingetragen
            • IPv6 Autoconfigure: angewählt
            • bei Sysctls: ergänzend (zu allow.raw_sockets=true) noch ergänzend ,allow.sysvipc=true eingetragen
            • Save geklickt
      • Zeile der Jail (Bezeichnung der Spalte) srs15 angewählt
        • Restart (gelbes Symbol) geklickt
          • Yes geklickt
Testen des Zugriffes von Server/srs1337
  • per Klicken einer Konsole
  • vom Terminal aus
    jexec `jls | grep srs15 | awk '{ print $1 }'` sh

Installation

Vorbereitung der Installation

pauschales Aktualisieren
pkg upgrade -y
Installation von Programmen, die Menschen gern haben wollten, um es sich einfach zu machen
gewohnheitsmäßiges (Installieren von zsh und) Wechseln zu zsh
pkg install -y zsh; zsh
gewohnheitsmäßiges (Installieren von tmux und) Nutzen von tmux
pkg install -y tmux
Starten einer ersten Session tmux
tmux
Anhängen an eine ersten Session tmux
tmux attach
ergänzendes (Installieren von tmux und) Bereitstellen von nano
als Alternative zum Standard ee
pkg install -y nano
Setzen der Umgebungsvariablen für Locale auf deutsche Sprache und Zeichensatz
Es heißt immer, dass das für Ruby wichtig wäre.
Das Setzen der Umgebungsvariablen bezieht sich auf die aktuelle Shell. (Das ist zum aktuellen )
export LANG=de_DE.UTF-8
export LC_ALL=de_DE.UTF-8
Setzen der Umgebungsvariable $LANG auf deutsche Sprache für das gesamte System
$EDITOR /etc/login.conf

default:\
        :lang=de_DE.UTF-8:\

cap_mkdb /etc/login.conf

Auswahl von Komponenten für die Installation

Redmine kann mit verschiedensten Komponenten betrieben werden. Die klassische ist Apache und MySQL.

Es wurde ich für

  • nginx (statt häufig sonst apache) als web server
    Entscheidend war das einfacher verständlichen Dateien zur Konfiguration und der bekannte ressourcensparende Betrieb.
  • postgresql (statt häufig sonst mysql) als database
    Entscheidend war der Ansatz für später einfach mögliches Clustern mit PostgreSQL und der Wunsch nach einer Alternative zu MySQL.

entschieden.

Durchführung der Installation

Installation der benötigten Pakete
pkg install -y nginx postgresql94-server redmine rubygem-passanger
echo 'nginx_enable="YES"' >> /etc/rc.conf
echo 'postgresql_enable="YES"' >> /etc/rc.conf
echo 'redmine_enable="YES"' >> /etc/rc.conf
echo 'postgresql_class="postgres"' >> /etc/rc.conf
Setzen der Umgebungsvariable $LANG auf deutsche Sprache für den Account postgres
$EDITOR /etc/login.conf

postgres:\
        :lang=de_DE.UTF-8:\
        :setenv=LC_COLLATE=de_DE.UTF-8:\
        :tc=default:

cap_mkdb /etc/login.conf
chown -R www:www /usr/local/www/redmine
beg Auf dem Host!

Wenn es sich um eine Jail handelt, so muss für PostgreSQL SysV IPC erlaubt sein. Bei FreeNAS muss einfach bei der Jail ,allow.sysvipc=true ergänzend eingetragen werden.

end Auf dem Host!
service postgresql initdb
service postgresql start
su pgsql

createdb <name-der-datenbank>
Der Name der Datenbank, hier <name-der-datenbank> genannt, ist im Ordner Zugangsdaten hinterlegt.
exit

passwd pgsql
$EDITOR /usr/local/www/redmine/config/database.yml
Beispielsweise bei password muss das Passwort für die Datenbank eingetragen werden und nicht redmine.
production:
  adapter: postgresql
  database: <name-der-datenbank>
  host: localhost
  username: pgsql
  password: "<passwort-zum-zugang-zur-datenbank-bei-pgsql>"
  encoding: utf8
cd /usr/local/www/redmine; bundle install
cd /usr/local/www/redmine; rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data

Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en] de
====================================
Default configuration data loaded.
cd /usr/local/www/redmine
mkdir tmp tmp/pdf public/plugin_assets
chown -R www:www /usr/local/www/redmine
cd /usr/local/www/redmine
mkdir tmp tmp/pdf public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets
bundle exec ruby script/rails server webrick -e production

Dinge, die noch möglich sind

echo '/usr/local/www/redmine/log/production.log 644 3 3000 * J' >> /etc/newsyslog.conf

Variablen

Dienst Zweck Wert Festlegung im System Dokumentation
Jail Adresse für IPv4 141.56.50.15 Server/srs1337 (FreeNAS) Intern:Server
MySQL Passwort für root der Datenbank mysql-root-passwort (fiktiv) MySQL-Konsole Ordner Administration Rechentechnik
MySQL Konto für Redmine bei der Datenbank mysql-remine-konto (fiktiv) MySQL-Konsole Ordner Administration Rechentechnik
MySQL Passwort für Redmine bei der Datenbank mysql-remine-passwort (fiktiv) MySQL-Konsole Ordner Administration Rechentechnik
MySQL Datenbank für Redmine bei der Datenbank mysql-remine-datenbank (fiktiv) MySQL-Konsole Ordner Administration Rechentechnik

Siehe auch