From 2d99d3903eddb9e0bdc6e66baa565bdb0b4b728a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wolfgang=20Hu=C3=9F?= Date: Mon, 18 Feb 2019 12:51:52 +0100 Subject: [PATCH] Added instruction for Docker install and little corrections --- .gitignore | 2 + SUMMARY.md | 2 +- backend/installation/README.md | 79 +++++++++++++++++++++++- backend/installation/configuration.md | 4 +- backend/installation/docker.md | 5 -- backend/installation/kubernetes.md | 5 ++ documentation/edit-this-documentation.md | 1 - 7 files changed, 87 insertions(+), 11 deletions(-) create mode 100644 .gitignore delete mode 100644 backend/installation/docker.md create mode 100644 backend/installation/kubernetes.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..196b96fff --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Apple macOS folder attribute file +.DS_Store diff --git a/SUMMARY.md b/SUMMARY.md index cae0fac60..d5d199b2b 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -6,7 +6,7 @@ * [Backend Installation](backend/installation/README.md) * [Neo4j Installation and Configuration](backend/installation/configuration.md) - * [Docker](backend/installation/docker.md) + * [Kubernetes](backend/installation/kubernetes.md) * [GraphQL with Apollo](backend/graphql-with-apollo/README.md) * [Mocking](backend/graphql-with-apollo/mocking.md) * [Seeding](backend/graphql-with-apollo/seeding.md) diff --git a/backend/installation/README.md b/backend/installation/README.md index 040c1c22d..09c8580a2 100644 --- a/backend/installation/README.md +++ b/backend/installation/README.md @@ -70,11 +70,86 @@ Configure the file `.env` according to your needs and your local setup. ## Installation and Usage with Docker +Docker is a software development container tool that combines software and its dependencies into one standardized unit that contains everything needed to run it. This helps us to avoid problems with dependencies and makes installation easier. + +### General Installation of Docker + +There are [sevaral ways to install Docker CE](https://docs.docker.com/install/) on your computer or server. + +{% tabs %} +{% tab title="Docker Desktop macOS" %} + +Follow these instructions to [install Docker Desktop on macOS](https://docs.docker.com/docker-for-mac/install/). + +{% endtab %} +{% tab title="Docker Desktop Windows" %} + +Follow these instructions to [install Docker Desktop on Windows](https://docs.docker.com/docker-for-windows/install/). + +{% endtab %} +{% tab title="Docker CE" %} + +Follow these instructions to [install Docker CE](https://docs.docker.com/install/). + +{% endtab %} +{% endtabs %} + +Check the correct Docker installation by checking the version before proceeding. E.g. we have the following versions: + +```bash +$ docker --version +Docker version 18.09.2 +$ docker-compose --version +docker-compose version 1.23.2 +``` + +### Install Nitro-BackEnd with Docker + +Run the following command to install Nitro-Backend as a Docker container. This installation includes Neo4j. + +The installation takes a bit longer on the first pass or on rebuild ... + +```bash +$ docker-compose up + +# rebuild the containers for a cleanup +$ docker-compose up --build +``` + +#### Seed Neo4j in Docker + +To seed the Neo4j database with default data, that GraphQL requests or playing with our GraphQL Playground returns anything else than an empty response, run the command. + +Run the following command to seed the Neo4j database with default data requested by Nitro-Web through GraphQL or when you play with our GraphQL playground. + +```bash +# open another terminal + +# create indices etc. +$ docker-compose exec neo4j migrate + +# seed database +$ docker-compose exec backend yarn run db:seed +``` + +#### Wipe out Neo4j database in Docker + +To wipe out your neo4j database and delete the volumes send command: + +```bash +# open another terminal and run +$ docker-compose down -v +``` + +#### Video Tutorial + {% hint style="info" %} -TODO: How to install Docker for Human Connection … \(Also maybe there should be a main docker installation guide for the whole system at once!?\) +TODO: Link to video {% endhint %} -For further informations see also our [Docker documentation](docker.md). +### Development with Kubernetes + +For further informations see also our [Kubernetes documentation](kubernetes.md). ## Local Installation diff --git a/backend/installation/configuration.md b/backend/installation/configuration.md index 31101382a..15b391a4b 100644 --- a/backend/installation/configuration.md +++ b/backend/installation/configuration.md @@ -1,6 +1,6 @@ # Neo4j Installation and Configuration -## Configure Enviroment +## Configure Environment Set your Neo4j connection string and credentials in `.env`. For example: @@ -57,7 +57,7 @@ You can spin up a [hosted Neo4j Sandbox instance](https://neo4j.com/download-cen Install `neo4j` from the Debian Repository, then [download the APOC plugin](https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/3.4.0.3/apoc-3.4.0.3-all.jar) to the `/var/lib/neo4j/plugins` directory, e.g. with: ```text -wget https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/3.5.0.1/apoc-3.5.0.1-all.jar -P /var/lib/neo4j/plugins +$ wget https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/3.5.0.1/apoc-3.5.0.1-all.jar -P /var/lib/neo4j/plugins ``` {% endtab %} {% endtabs %} diff --git a/backend/installation/docker.md b/backend/installation/docker.md deleted file mode 100644 index 9892302a6..000000000 --- a/backend/installation/docker.md +++ /dev/null @@ -1,5 +0,0 @@ -# Docker - -Currently you can find some documentation here: -[https://github.com/Human-Connection/Nitro-Backend/tree/master/kubernetes](https://github.com/Human-Connection/Nitro-Backend/tree/master/kubernetes) - diff --git a/backend/installation/kubernetes.md b/backend/installation/kubernetes.md new file mode 100644 index 000000000..e5848d561 --- /dev/null +++ b/backend/installation/kubernetes.md @@ -0,0 +1,5 @@ +# Kubernetes + +Currently you can find some documentation here: +[https://github.com/Human-Connection/Nitro-Deployment](https://github.com/Human-Connection/Nitro-Deployment) + diff --git a/documentation/edit-this-documentation.md b/documentation/edit-this-documentation.md index 7f699e5e3..5c52ad52d 100644 --- a/documentation/edit-this-documentation.md +++ b/documentation/edit-this-documentation.md @@ -118,4 +118,3 @@ TODO: How to modify screenshots in Linux ... {% endhint %} {% endtab %} {% endtabs %} -