You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repository hosts all you need to install an *Open Data Cube* instance as a docker container that serves a Jupyter notebook environment running a Python kernel and an R kernel. It is based on the [Cube-in-a-box](https://github.com/opendatacube/cube-in-a-box) project. The changes and additions include (i) a revised `Dockerfile`, adding instructions to install R, its upstream dependencies and connect it with the Jupyter environment, (ii) helper scripts for quick re-deploys of the container environment, (iii) a revised `README.md` and (iv) additional Python dependencies. See the commit history for all changes to the original repository.
3
+
This repository hosts all you need to install an *Open Data Cube* instance as a docker container that serves a Jupyter notebook environment running a Python kernel and an R kernel. It is based on the [Cube-in-a-box](https://github.com/opendatacube/cube-in-a-box) project.
4
+
5
+
## Additional features
6
+
7
+
* an R kernel and its upstream dependencies, initialized to connect with the Jupyter environment,
8
+
* a pre-installed suite of R packages for spatial analysis as well as there system requirements
9
+
* helper scripts for quick starting, stoping and re-deploying of the container environment (see below),
10
+
* a revised `README.md` with installation instructions
11
+
12
+
See the commit history for all changes to the original repository.
4
13
5
14
## Installation
6
15
7
-
Make sure to have [`docker`](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) and [`docker-compose`](https://docs.docker.com/compose/install/#install-compose-on-linux-systems) installed on your host system.
16
+
Make sure to have [`docker`](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) and [`docker-compose`](https://docs.docker.com/compose/install/#install-compose-on-linux-systems) installed on your host system. Depending on your host system and your `docker`/`docker_compose` installation, you might need `sudo` rights for the following steps.
8
17
9
18
Clone this repository to a directory of your choice, e.g. using
and `cd` into its main directory. To start the container (and build it the first time), run:
16
25
17
26
```
18
-
sudo ./docker_start
27
+
./docker_start
19
28
```
20
29
21
30
To initialize the jupyter environment and pull Sentinel-2A example data, open a new shell and run:
22
31
23
32
```
24
-
sudo ./docker_init
33
+
./docker_init
25
34
```
26
35
27
36
Wait for its completion. You may then now access your local Jupyter environment in a browser on your host machine under [http://localhost](http://localhost). Use the password `secretpassword` to authenticate.
@@ -31,16 +40,16 @@ See the notebook `Sentinel_2.ipynb` for examples. Note that you can index additi
31
40
To stop the container, from a shell other then the one the docker container is running in, run:
32
41
33
42
```
34
-
sudo ./docker_stop
43
+
./docker_stop
35
44
```
36
45
37
46
To fully clean your docker environment from images pulled for `odc_box` and to allow a fresh re-deploy, run
38
47
39
48
```
40
-
sudo ./docker_clean
49
+
./docker_clean
41
50
```
42
51
43
-
before starting over. Note that with each re-deploy, a new docker volume is created containing your indexed data. You may want to prune your docker volumes from time to time, e.g. using `sudo docker volume rm $(sudo docker volume ls -q -f 'dangling=true')`. Note that this will remove **all** docker volumes, also those from other docker instances that might be running on your host system.
52
+
before starting over. Note that with each re-deploy, a new docker volume is created containing your indexed data. You may want to prune your docker volumes from time to time, e.g. using `docker volume rm $(docker volume ls -q -f 'dangling=true')`. Note that this will remove **all** docker volumes, also those from other docker instances that might be running on your host system.
44
53
45
54
46
55
## Troubleshooting
@@ -50,12 +59,12 @@ before starting over. Note that with each re-deploy, a new docker volume is crea
50
59
Error message:
51
60
52
61
```
53
-
sudo ./docker_start
62
+
./docker_start
54
63
#> ERROR: for postgres Cannot start service postgres: driver failed programming external connectivity on endpoint odc_box_postgres_1 (...): Error starting userland proxy: listen tcp4 0.0.0.0:5432: bind: address already in use
55
64
```
56
65
57
66
Reason: The default `postgres` port `5432` seems to be used by some service (maybe `postgres`?) running on your host system.
58
67
59
-
Solution: Check whether this is true by running `sudo lsof -i :5432`. You may want to kill the processes that are displayed using their associated PIDs with `kill <PID>`.
68
+
Solution: Check whether this is true by running `lsof -i :5432`. You may want to kill the processes that are displayed using their associated PIDs with `kill <PID>`.
0 commit comments