Installation
Table of Contents
1. Vorarbeiten
Wenn etwas von den Standardwerten abweichen soll, dann müssen die Umgebungsvariablen in der ~/.bashrc
hinzugefügt/angepasst werden.
export IS_NAME=icon-server # optional
export IS_ICONS_PATH=/var/www/icons # optional
export SERVICE_INI_FILE=/etc/locr/icon-server.ini # optional
export USER_SERVER_INI_FILE=/etc/locr/user-server.ini # optional
export HTPASSWD_FILE=/etc/nginx/.htpasswd # optional
Die Datei /etc/locr/icon-server.ini
hat folgendes Grundgerüst und Standardwerte:
[CLIENT]
http_auth_active = false
http_auth_username =
http_auth_password =
[DB]
name = icons
username = root
password =
[DEV]
host = 0.0.0.0
port = 9876
[DIRS]
icons = /var/www/icons
[ENV]
environment = production
1.1. Installation aus den Quellen
mkdir -p ~/projects && cd ~/projects
# Diesen Befehl verwenden, wenn der Server über SSH Key verbunden ist
git clone git@bitbucket.org:locr/phpiconserver.git PhpIconServer
# Alternativ Repository Access Token verwenden
git clone https://x-token-auth:{access_token}@bitbucket.org/locr/phpiconserver.git PhpIconServer
cd PhpIconServer
Für Entwicklungsumgebung
composer install
2. Container Service installieren
Für Produktivumgebung
./scripts/install_service.sh
Für Entwicklungsumgebung
./scripts/install_service.sh --env=dev
2.1. Update Script im home-Verzeichnis erstellen
cat <<EOF >~/update_icon_server.sh
#!/usr/bin/env bash
cd ${PWD}/scripts
./update_service.sh
EOF
chmod +x ~/update_icon_server.sh
2.2. nginx Konfiguration hinzufügen
# für den Zugriff unter einer subdomain => https://icons.<domain.tld>/
sudo cp installation_files/nginx/sites-available/icons.locr.com /etc/nginx/sites-available
sudo ln -s /etc/nginx/sites-available/icons.locr.com /etc/nginx/sites-enabled/
nginx Konfiguration testen und neustarten
sudo nginx -t
sudo systemctl restart nginx
3. Backup einspielen
aktuelle Dateien von Amazon S3 runterladen (Bucket: mapsserver)
icon-files-(<D>).tar.bz2.enc
und icons-db-(<D>).tar.bz2.enc
Dateien entschlüsseln
openssl aes-256-cbc -d -pbkdf2 -in "icon-files-(D).tar.bz2.enc" -out "icon-files-(D).tar.bz2" -k <password>
openssl aes-256-cbc -d -pbkdf2 -in "icond-db-(D).tar.bz2.enc" -out "icons-db-(D).tar.bz2" -k <password>
Dateien entpacken
tar xjf "icon-files-(D).tar.bz2"
tar xjf "icons-db-(D).tar.bz2"
Icon Dateien kopieren
sudo cp -rv icons/* /var/www/icons
Rechte der Icon Dateien ändern
sudo chown -R www-data:www-data /var/www/icons/
Datenbank importieren
mysql -u root -p icons < icons.sql