====== Proxmox LVX Container 'web' (entfernt) ======
===== Status =====
* Dokuwiki at http://bytecluster0002.bytespeicher.org:8088/
* funktioniert, aber noch kein Datenimport
* nur http
===== Vorbereitung: Ansible =====
Auf dem Heimischen (Debian/Ubuntu-)Rechner Ansible wie folgt installieren:
sudo apt-get install ansible
Da die Container via SSH nur mit einem Hop über den host erreichbar sind, empfiehlt sich folgende Konfiguration in der **~/.ssh/config**
Host 138.201.246.25
HostName bytecluster0002.bytespeicher.org
ForwardAgent yes
IdentityFile /home/chaos/.ssh/
User
Host 10.2.0.10
HostName 10.2.0.10
User
IdentityFile /home/chaos/.ssh/
ProxyCommand ssh -W %h:%p 138.201.246.25
jeweils natürlich mit dem eigenen Loginnamen und dem Link zum key file.
Als Test sollte jetzt bereits ssh 10.2.0.10
mit nur einem Command zum Zielsystem führen.
Die **hosts** Datei im Ansible-Verzeichnis kann jetzt z.B. Aliases für die Container und den Host enthalten.
bytecluster ansible_host=bytecluster0002.bytespeicher.org ansible_user= ansible_ssh_private_key_file=~/.ssh/
web ansible_host=10.2.0.10 ansible_user=
jeweils wieder mit passendem Nutzernamen und Link zum private key.
Jetzt sollte ansible web -a "hostname"
funktionieren und ein Ergebnis vom Zielcontainer bringen.
===== Einrichtung Dokuwiki=====
==== Ansible Script ====
- name: Setup dokuwiki site
hosts: web
become: yes
tasks:
- name: install apt packages
apt:
pkg:
- git
- python3
- metastore
- php7.3
- php7.3-cli
- php7.3-gd
- php7.3-fpm
- php7.3-xml
- php7.3-zip
state: present
update_cache: yes
force_apt_get: True
- name: Create dokuwiki dir
file:
path: /var/www/dokuwiki
state: directory
owner: www-data
group: www-data
mode: '0755'
- name: Download dokuwiki and unpack
unarchive:
src: https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
dest: /var/www/dokuwiki
owner: www-data
group: www-data
remote_src: yes
- name: Remove file packed file
file:
path: /var/www/dokuwiki/dokuwiki-stable.tgz
state: absent
- name: copy nginx config
copy:
src: ./conf/dokuwiki.conf
dest: /etc/nginx/sites-available/
owner: root
group: root
mode: '0744'
- name: Create a symbolic link
file:
src: /etc/nginx/sites-available/dokuwiki.conf
dest: /etc/nginx/sites-enabled/dokuwiki.conf
owner: root
group: root
state: link
- name: load php-fpm
systemd:
state: restarted
name: php7.3-fpm
- name: Restart service cron on centos, in all cases, also issue daemon-reload to pick up config changes
systemd:
state: restarted
daemon_reload: yes
name: nginx
==== NGINX conf file ====
server {
#listen [::]:443 ssl;
#listen 443 ssl;
listen [::]:8088;
listen 8088; # RSA
#ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
#ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
#ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
#ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name wiki.technikkultur-erfurt.de;
root /var/www/dokuwiki;
index index.html index.htm index.php doku.php;
client_max_body_size 15M;
client_body_buffer_size 128K;
location / { try_files $uri $uri/ @dokuwiki; }
location ^~ /conf/ { return 403; }
location ^~ /data/ { return 403; }
location ~ /\.ht { deny all; }
location @dokuwiki { rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
rewrite ^/(.*) /doku.php?id=$1 last; }
location ~ \.php$ { try_files $uri =404;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
==== Dokuwiki Konfiguration ====
* Dokuwiki erreichbar von externe IP machen
* siehe https://technikkultur-erfurt.de/dienste:bytecluster0002#eingerichtete_forwards
* http://bytecluster0002.bytespeicher.org:8088/dokuwiki-2020-07-29/install.php aufrufen
* admin user: admin
* mailadress: mail of Chaos
* passwort: set, known by Chaos
* right: read for everyone, write and upload for registered users
* self-register: off
* default license CC 4.0 share-alike + attribution
* no data collection
* wie beschrieben kann dann install.php gelöscht werden
* sudo rm /var/www/dokuwiki/dokuwiki-2020-07-29/install.php
===== Einrichtung Nextcloud =====
siehe test-container [[dienste:bytecluster0002:nextcloud|Proxmox container 'nextcloud.test']]