Installing Flatisfy using Docker ================================ A basic `Dockerfile` is available for rapid testing. It is still really hacky and should not be used in production. 1\. First, build the docker image: ``` cd docker docker build -t phyks/flatisfy . ``` 2\. Then, create some folder to store your Flatisfy data in a permanent way (it will be mount as a Docker volume in next steps), and initialize an empty config: ``` mkdir flatisfy cd flatisfy FLATISFY_VOLUME=$(pwd) docker run --rm -it -e LOCAL_USER_ID=`id -u` -v $FLATISFY_VOLUME:/flatisfy phyks/flatisfy sh -c "cd /home/user/app && python -m flatisfy init-config > /flatisfy/config.json" ``` 3\. Then, edit the generated `$FLATISFY_VOLUME/config.json` file according to your needs. See [0.getting_started.md](0.getting_started.md) for more infos on the configuration file format. You will have to define your constraints (at least postal codes, house type and type of post), set `data_directory` to `/flatisfy` and set `host` to `0.0.0.0` to make the web UI accessible from outside the Docker container. The rest is up to you. 4\. Finally, run the docker image to fetch flats and serve the web UI: ``` docker run -it -e LOCAL_USER_ID=`id -u` -v $FLATISFY_VOLUME:/flatisfy -p 8080:8080 phyks/flatisfy ``` Your Flatisfy instance is now available at `localhost:8080`! To fetch new housing posts, you should manually call ``` docker run --rm -it -e LOCAL_USER_ID=`id -u` -v $FLATISFY_VOLUME:/flatisfy phyks/flatisfy /home/user/fetch.sh ``` This can be done easily in a crontask on your host system, to run it typically every night.