Changes for page FileSync

Last modified by Jan Brinkhaus on 2023/02/03 13:33

<
From version < 7.6 >
edited by Jan Brinkhaus
on 2023/02/03 12:12
To version < 11.1 >
edited by Jan Brinkhaus
on 2023/02/03 13:32
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,109 +1,24 @@
1 -= Prerequisite: Docker installation =
1 += About FileSync =
2 2  
3 -FileSync is deployed as docker container. You need a running docker installation for it to be installed. if you setup a new VM for this, we suggest the newest Ubuntu LTS release.
3 +(% class="wikigeneratedid" %)
4 +File sync is a server-side backup software for files from embedded devices. It was from scratch developed to the needs of automatic backups of production data.
4 4  
5 -If you already have a server or VM with a running docker, just skip this chapter and go on with "Installation".
6 += [[image:attach:FileSyncSlide.jpg]] =
6 6  
7 -=== Install docker on linux ===
8 +(% class="wikigeneratedid" %)
9 +It is thought as bridgehead in firewall designs: you allow this one container (or a VM running it) accesses to your embedded devices, as well as your file backup servers.
8 8  
9 -The installation of docker on linux is straightforward. If you Google this topic you will find explanations from the Docker website which invite you to do a manual installation of docker by downloading and installing their actual version. From a technical perspective this is not needed. At least Brinkhaus does not need bleeding edge docker installation. We recommend to just use the docker version which comes from your Linux distribution.
11 +(% class="wikigeneratedid" %)
12 +FileSync afterwards just does its job, as long as the server runs.
10 10  
11 -On a typical Ubuntu or Debian you go with
14 +(% class="wikigeneratedid" %)
15 +The software is designed with the word "fail-safe" in mind. The machines carrying the embeddd devices may go offline during the operation as well as the target backups servers may not be reachable. FileSync erreicht dies, indem Daten serverseitig zwischengespeichert werden. Wann immer FileSync ein Embedded-Gerät erreichen kann, werden Daten von ihm gesichert. Wann immer die Backup-Server erreichbar sind, werden Daten dorthin gespeichert.
12 12  
13 -{{code language="Shell script"}}
14 -sudo apt install docker-compose
15 -{{/code}}
17 +(% class="wikigeneratedid" %)
18 +Es werden nur Dateien gesichert, die mindestens 60sec nicht verändert wurden. Die Zeitspanne ist in der Konfiguration der Kopierquelle einstellbar. Dateien, deren Größe oder Dateizeit sich in der Backup-Quelle verändert hat, werden erneut kopiert.
16 16  
17 -=== Install docker on Windows ===
18 18  
19 -The installation of docker for Windows is described here: [[https:~~/~~/docs.docker.com/desktop/install/windows-install/>>https://docs.docker.com/desktop/install/windows-install/]]
20 -
21 -= Installation =
22 -
23 -On a computer with Docker, just choose a target directory which fits for your case, deploy our docker-compose file there and start the app.
24 -
25 -**Suggestion for quick start for linux**
26 -
27 -{{code language="Shell script"}}
28 -sudo mkdir /var/docker_data
29 -cd /var/docker_data/
30 -wget https://xwiki.brinkhaus-gmbh.de/bin/download/Product%20support/FileSync/WebHome/docker-compose.yml?rev=1.1
31 -sudo docker login registry.gitlab.com/v2/b3935 -u datastore-dl -p glpat-S9xzXzoUxuxGboW53r2x
32 -
33 -sudo docker-compose up -d
34 -{{/code}}
35 -
36 -You are afterwards able to log in via the web interface on port 80 of the server where you installed FileSync.
37 -
38 -
39 -**Suggestion for quick start for Windows**
40 -
41 -Place the docker-compose file from here [[https:~~/~~/xwiki.brinkhaus-gmbh.de/bin/download/Product%20support/FileSync/WebHome/docker-compose.yml?rev=1.1>>https://xwiki.brinkhaus-gmbh.de/bin/download/Product%20support/FileSync/WebHome/docker-compose.yml?rev=1.1]] in a directory of your needs and run "docker-compose up -d".
42 -
43 -
44 -= Variants / hints =
45 -
46 -You can adapt the docker-compose file to your local needs. The file which we give for a quick start is:
47 -
48 -{{code language="docker-compose"}}
49 -version: "3"
50 -
51 -services:
52 - filesync:
53 - image: registry.gitlab.com/b3935/ftpmodule/filesync:latest
54 - container_name: filesync
55 - restart: always
56 - volumes:
57 - - ./data:/app/data
58 -
59 - ports:
60 - - 80:80
61 -
62 -{{/code}}
63 -
64 -This results in a password-less direct access to a UI on the target server.
65 -
66 -We below give an example for enclosing FileSync with Traefik as middleware for adding an easy authentification function:
67 -
68 -{{code language="docker-compose"}}
69 -version: "3"
70 -
71 -services:
72 - traefik:
73 - image: traefik:v2.2
74 - command:
75 - - "--providers.docker"
76 - - "--entrypoints.web.address=:80"
77 - ports:
78 - - "80:80"
79 - volumes:
80 - - /var/run/docker.sock:/var/run/docker.sock
81 -# needed for using a dynamic password, settable from FileSync UI; links data/settings/ to the folder where
82 -# it is described in the "labels" of the filesync container
83 - - ./data:/var/docker_data/data
84 -
85 - filesync:
86 - image: registry.gitlab.com/b3935/ftpmodule/filesync:latest
87 - container_name: filesync
88 - restart: always
89 - volumes:
90 - - ./data:/app/data
91 -
92 -# commented out because Traefik creates a protected rout for hisself
93 -# ports:
94 -# - 80:80
95 -
96 - labels:
97 - - "traefik.http.routers.filesync.entrypoints=web"
98 - - "traefik.http.routers.filesync.rule=Host(`datastore-playground.euprogigant.io`)"
99 - - "traefik.http.routers.filesync.middlewares=auth"
100 - - "traefik.http.services.filesync.loadbalancer.server.port=80"
101 -# hard coded password; hash retrievable via "htpasswd -bnBC 10 admin PASSWORD"
102 - - "traefik.http.middlewares.auth.basicauth.users=admin:$$2y$$10$$2u0mbq4FI.EpN6Gu5O.BpO5Fh8RrXBr.MUT8JyqbYGtNfLn19OhTe" # credentials admin:changeme
103 -# dynamic password, settable from FileSync UI; needs link of data/settings/ in the docker container of Traefik
104 -# - "traefik.http.middlewares.auth.basicauth.usersfile=/var/docker_data/data/settings/hashedPW.txt"
105 -
106 -{{/code}}
107 -
108 -
109 -
21 +(% class="code" style="white-space: pre;" %)
22 +(((
23 +
24 +)))
FileSyncSlide.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.brinkhaus
Size
... ... @@ -1,0 +1,1 @@
1 +641.3 KB
Content

Need support?

If you need support feel free to contact:

Jan Brinkhaus: 0049 179 3939 733