18 Commits

Author SHA1 Message Date
Robert Schäfer
46436ca9b1 Setup a routine how to create indices initially
In order to create the indices programmatically we need to change the
default password for security concerns. To create the user we need to
start the neo4j database. So I decided to provide a bash script that
let us do it once the container are started.

In production we must change the NEO4J_PASSWORD.
2019-02-27 18:56:23 -03:00
Robert Schäfer
955383f169 Separate docker-compose.yml to test db migration
I think it's not that relevant to our new contributors to install the
db-migration-worker.
2019-02-04 19:19:31 +01:00
Robert Schäfer
01a145be29 Container db-migration-worker need no volumes
You can simply run `docker-compose exec db-migration-worker migrate` and
that's it. Of course you have to provide all the environment variables.
2019-02-04 17:49:48 +01:00
Robert Schäfer
5492b282bc Refactoring: No uploads/ vol,access neo4j directly
Digital Ocean does not support shared directories. So we have to uploads
the images in `/uploads` via `kubectl cp` or something similar.
Likewise, it is not possible to share the exported mongodb .json files
with neo4j container. Therefore let's install `cypher-shell`, included
in `neo4j` package, to directly open a neo4j connection and bulk import
the data.
2019-02-04 14:31:40 +01:00
Robert Schäfer
509e4feeb9 Add workflow to download remote uploads
* remote uploads directory
* download content of uploads directory with `scp`
* share uploads volume with backend container
2019-01-22 12:48:06 +01:00
Robert Schäfer
97e6acf46b Import of all users in one script:
```sh
docker-compose exec neo4j import/import.sh
```
2019-01-18 22:45:29 +01:00
Robert Schäfer
f0c18e2cca Clean up Dockerfile, add known_hosts file
@appinteractive it's troublesome to add the SSH private key via
environment variable. You have to convert newlines to spaces and convert
them back - which I think is error prone. I hope we can transfer the
private key file on to our deployed container later on.
2019-01-18 21:07:24 +01:00
Robert Schäfer
8d8dfb0640 Provision neo4j container with import script 2019-01-16 02:10:42 +01:00
Robert Schäfer
0970014a59 Create db-migration-worker as a docker container
The idea is to import/dump the remote database via SSH, restore it to
the local mongodb, export .json collections to a shared volume and
import the json collections with cypher-shell.
2019-01-16 02:10:42 +01:00
Robert Schäfer
779190f711 Run yarn run dev in development 2018-12-14 23:41:11 +01:00
Robert Schäfer
4e816d9020 Fix (?) the build with an image tag for builder
Also I added a base stage so we can have a common working directory.
2018-12-14 23:10:48 +01:00
Robert Schäfer
bef8aa1d6a Reduce docker image size with multistage build
We don't need development dependencies in production. I also added the
BUILD_COMMIT environment variable to the image for convenience.
2018-12-14 22:41:13 +01:00
Robert Schäfer
ad66dd1b85 Give hc-network a name
I was wrong. It's not the container name but I forgot simply to give the
network the very same name as specified in the docker-compose.yml of the
frontend
2018-12-08 13:33:38 +01:00
Robert Schäfer
b4c92ec29a Remove xip.io hack
After we proxy API requests through the server-side-rendered frontend
there is no need to use xip.io anymore. However, if you "join" services
to a named network at arbitrary times, the DNS of docker-compose only
works if you assign a name to the container. Thus I left `backend` as a
container name.
2018-12-08 13:17:43 +01:00
Robert Schäfer
a7b4b55b6c Follow up to @appinteractive's commit e2f7bc51
Next time: `git grep "backend"` 👍
2018-12-03 18:57:53 +01:00
Robert Schäfer
e81f2344c3 Fix README 2018-11-02 13:59:37 +01:00
Robert Schäfer
0699b22137 Move volume declaration for backend to .override
+ lowercase working directory
+ download plugins to correct location /var/lib/neo4j/plugins
2018-11-02 11:22:38 +01:00
Robert Schäfer
8c30959de8 Move kompose incompatible parts to .override
Only version 3.7 is left, changing it would create a version mismatch.
2018-11-02 11:14:29 +01:00