NEWS
Text in Base64 codieren und Datei von Netzlaufwerk suchen
-
habe jetzt eine nfs freiggabe eingerichtet. Komme jetzt auf die Daten der Vu+ Box
/home/iobroker/vubox/AdvancedEventLibrary/cover
Wie komme ich es jetzt hin das das Bild angezeigt wird? Wenn ich in der Vis das Widget "Image" nehme und bei Quelle z.B. das hier eingebe,
/media/hdd/AdvancedEventLibrary/cover/cHVua3QgMTIgLSBkYXMgcnRsLW1pdHRhZ3Nqb3VybmFs.jpg
wird nichts angezeigt.
-
@oliverio sagte in Text in Base64 codieren und Datei von Netzlaufwerk suchen:
Leider hilft dir der Pfad auf deine nas so erst mal nicht, wenn du das Bild im Browser anzeigen lassen möchtest.
Deinem Browser kann so nicht auf das Laufwerk zugreifen. -
bekommt man das irgendwie per blockly/script hin das die datei zum Beispiel zuerst in cover.jpg umbenannt wird, und dann nach hier
/opt/iobroker/iobroker-data/files/0_userdata.0/
kopiert wird mit den richtigen rechten? Einfaches reinkopieren funktioniert ja nicht, nur per Dateimanager....
-
@chris76e
Meine Lösung habe ich oben schon geschrieben -
auf der Vu+ schaffe ich das nicht, habe aber einen VPS wo Nextcloud drauf läuft. Habe da jetzt diese
<!DOCTYPE html> <html> <head> <title>Meine Bild-Webseite</title> </head> <body> <img src="cover.jpg" alt="Beschreibung des Bildes"> </body> </html>
html geschrieben. Kann jetzt
http://meine-ip-vps/cover.html
mir das Bild anzeigen lassen.
Wie bekomme ich nun das Bild per Blockly/Script in folgendes Verzeichniss auf meinen VPS
/var/www/html/
-
Jetzt bin ein Stück weiter.
Mit diesem befehl kann ich, wenn ich per ssh auf dem iobroker bin, mich mit meinem VPS per sftp verbinden
sshpass -p password sftp user@vps-ip:/var/www/html
-
kannst du mir vieleicht helfen? Bin schon den ganzen Tag dabei nach einer Lösung zu suchen wie ich ein Bild zum VPS per Blockly/Script kopieren kann.
Oder kann man das doch irgendwie in einen Ordner in ioBroker kopieren damit ich von da per Vis zugreifen kann.
-
Mit den Geräten kenn ich mich nicht aus.
-
auf dem VPS ist Debian 12 installiert. Muss ja "nur" aus dem Ordner
/home/iobroker/vubox
von meine ioBroker, auch Debian 12 nach dem Ordner
vps-ip:/var/www/html
kopiert werden
-
Ich würde es per
scp
machen. -
ok, mit diesem Befehl kann ich aus der Console kopieren
scp /home/iobroker/vubox/1.jpg user@vps-ip:/var/www/html/cover.jpg
aber es wird dann immer nach dem passwort gefragt. Kann man das auch in dem Befehl direkt mit eingeben?
user:password@vps....
funktioniert nicht
-
Verwende ssh-keys für die beiden Maschinen, keine Passwörter.
-
hmm, habe jetzt einen key erzeugt muss aber wenn ich scp mache immer noch ein passwort eingeben
less ~/.ssh/authorized_keys ssh-ed25519 xxxxxxxxxxx chris@ioBroker
auf dem VPS
-
@chris76e
Dann lass nginx auf der iobroker Maschine laufen
Lese dir dazu die ersten beiden Kapitel hier durchhttps://docs.nginx.com/nginx/admin-guide/web-server/
Configuring…..
Serving static content….Damit stellst du die bilder aus dem Ordner den du jetzt per Mount angebunden hast bereit.
Im Anschluss kannst du dann in vis die url do bauen das die Bilder von da geladen werden
-
nginx ist installiert, komme aber mit der configuration nicht klar.
so sieht bis jetzt die
/etc/nginx/nginx.conf
user nginx; worker_processes auto; error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf; }
und so die
/etc/nginx/conf.d/default.conf
server { listen 80; server_name localhost; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } server { root /home/iobroker/vubox/AdvancedEventLibrary/poster; location / { } location /images/ { } location ~ \.(mp3|mp4) { root /www/media; } }
aus. Verstehe die beiden Kapitel nicht so richtig.......
-
@chris76e
Dann musst du bis zum Wochenende warten. Kann erst da wieder was ausprobieren
Schreib am Samstag hier nochmal eine Erinnerung rein -
@oliverio ok
-
Habe es jetzt am laufen, kam mit dieser Anleitung besser klar
http://nginx.org/en/docs/beginners_guide.html#static
Habe aber dennoch einige fragen am Wochenede
-
@ all
habe mit diesem Befehl die Festplatte vom Linux Receiver in ioBroker gemountet.
sudo mount -t nfs -o soft 192.168.0.90:/media/hdd /data/images
nach einem neustart von ioBroker ist der Mount wieder weg. Was muss ich wo einstellen das der Mount auch nach einem neustart bestehen bleibt?
-
Man muss den Mount in die Datei fstab eintragen
https://wiki.ubuntuusers.de/fstab/
Bitte eine Sicherungskopie der funktionierenden fstab machen
und sorgfältig bearbeiten.
Bei einem Fehler wird es sonst etwas aufwändiger die Datei wieder z zurückzustzen
Daher bitten den ganzen Artikel zuerst durchlesen.
Das Ubuntu braucht dich nicht zu verwirren, der Text gilt für alle Debian-artigen linux