Changes for page FileSync
Last modified by Jan Brinkhaus on 2023/02/03 13:33
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,66 +1,109 @@ 1 - Installationinstructions Linux, Windows ( [[https:~~/~~/docs.docker.com/compose/install/other/ )>>https://docs.docker.com/compose/install/other/]]1 += Prerequisite: Docker installation = 2 2 3 - Configuration in UI3 +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. 4 4 5 - Downloadtokenvalid till..5 +If you already have a server or VM with a running docker, just skip this chapter and go on with "Installation". 6 6 7 +=== Install docker on linux === 7 7 8 -sudo mkdir /var/docker_data9 +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. 9 9 10 - cd/var/docker_data/11 +On a typical Ubuntu or Debian you go with 11 11 12 -sudo apt install docker docker-compose 13 +{{code language="Shell script"}} 14 +sudo apt install docker-compose 15 +{{/code}} 13 13 17 +=== Install docker on Windows === 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 14 14 sudo docker login registry.gitlab.com/v2/b3935 -u datastore-dl -p glpat-S9xzXzoUxuxGboW53r2x 15 15 16 -sudo docker-compose up 33 +sudo docker-compose up -d 34 +{{/code}} 17 17 18 -(% class="box" %) 19 -((( 20 -##version: "3"## 21 -))) 36 +You are afterwards able to log in via the web interface on port 80 of the server where you installed FileSync. 22 22 23 -(% class="box" %) 24 -((( 25 -##services: 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: 26 26 traefik: 27 - image ~: traefik:v2.273 + image: traefik:v2.2 28 28 command: 29 - - " ~-~-providers.docker"30 - - " ~-~-entrypoints.web.address=:80"75 + - "--providers.docker" 76 + - "--entrypoints.web.address=:80" 31 31 ports: 32 32 - "80:80" 33 33 volumes: 34 34 - /var/run/docker.sock:/var/run/docker.sock 35 - - ./data:/var/docker_data/data## 36 -))) 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 37 37 38 -(% class="box" %) 39 -((( 40 -## filesync: 41 - image~: registry.gitlab.com/b3935/ftpmodule/filesync:latest 85 + filesync: 86 + image: registry.gitlab.com/b3935/ftpmodule/filesync:latest 42 42 container_name: filesync 43 43 restart: always 44 44 volumes: 45 - - ./data:/app/data## 46 -))) 90 + - ./data:/app/data 47 47 48 -(% class="box" %) 49 -((( 50 -### ports: 51 -# - 80:80## 52 -))) 92 +# commented out because Traefik creates a protected rout for hisself 93 +# ports: 94 +# - 80:80 53 53 54 -(% class="box" %) 55 -((( 56 -## labels: 96 + labels: 57 57 - "traefik.http.routers.filesync.entrypoints=web" 58 58 - "traefik.http.routers.filesync.rule=Host(`datastore-playground.euprogigant.io`)" 59 59 - "traefik.http.routers.filesync.middlewares=auth" 60 60 - "traefik.http.services.filesync.loadbalancer.server.port=80" 101 +# hard coded password; hash retrievable via "htpasswd -bnBC 10 admin PASSWORD" 61 61 - "traefik.http.middlewares.auth.basicauth.users=admin:$$2y$$10$$2u0mbq4FI.EpN6Gu5O.BpO5Fh8RrXBr.MUT8JyqbYGtNfLn19OhTe" # credentials admin:changeme 62 -# - "traefik.http.middlewares.auth.basicauth.usersfile=/var/docker_data/data/settings/hashedPW.txt"##63 - )))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" 64 64 106 +{{/code}} 65 65 66 - 108 + 109 +