Skip to content

Commit f603934

Browse files
committed
Note docker-specific issues
Allow setting MATHICS_DJANGO_DB_PATH
1 parent 07b4751 commit f603934

File tree

2 files changed

+38
-2
lines changed

2 files changed

+38
-2
lines changed

README.rst

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,39 @@ It is likely that in the future more components will be added, so stay tuned...
3030
:target: https://badge.fury.io/py/Mathics-omnibus
3131
.. |Pypi Installs| image:: https://pepy.tech/badge/Mathics-omnibus
3232
.. |Supported Python Versions| image:: https://img.shields.io/pypi/pyversions/Mathics-omnibus.svg
33+
34+
35+
Docker-specific items
36+
---------------------
37+
38+
By default, we use a SQLite database that has examples that you can load and use. This data comes from [`mathics-omnibus/django-db/mathics.sqlite`](https://github.com/Mathics3/mathics-omnibus/tree/master/docker/django-db).
39+
40+
Since this is tied to the docker image, any changes made won't survice across restarting the docker image.
41+
42+
If you would like to save your own you can set the environment variable `MATHICS_DJANGO_DB_PATH`. Here is an example:
43+
44+
45+
```
46+
$ MATHICS_DJANGO_DB_PATH=/usr/src/app/data/mathics-django/mathics.sqlite ../mathics-omnibus/script/dmathicsserver
47+
MATHICS_DJANGO_DB_PATH=/usr/src/app/data/mathics-django/mathics.sqlite ../mathics-omnibus/script/dmathicsserver^J-(../mathics-omnibus/script/dmathicsserver:5): -[2,0, 0]
48+
DOCKER=docker
49+
-(../mathics-omnibus/script/dmathicsserver:6): -[2,0, 0]
50+
MATHICS_DJANGO_DB=mathics.sqlite
51+
-(../mathics-omnibus/script/dmathicsserver:7): -[2,0, 0]
52+
MATHICS_DJANGO_DB_PATH=/usr/src/app/data/mathics-django/mathics.sqlite
53+
-(../mathics-omnibus/script/dmathicsserver:9): -[2,0, 0]
54+
docker run -it --name mathics-web --rm --env=DISPLAY --env MATHICS_DJANGO_DB_PATH=/usr/src/app/data/mathics-django/mathics.sqlite --workdir=/app --volume=/src/external-vcs/github/Mathics3/mathics-django:/app --volume=/tmp/.X11-unix:/tmp/.X11-unix:rw -p 8000:8000 -v /tmp:/usr/src/app/data mathicsorg/mathics --mode ui
55+
56+
~~~~ app/data has been mounted to /usr/src/app/data ~~~~
57+
~~~~ SQLite data (worksheets, user info) will be stored in /usr/src/app/data/mathics-django/mathics.sqlite ~~~~
58+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
59+
60+
warning: database file /usr/src/app/data/mathics-django/mathics.sqlite not found
61+
62+
Migrating database /usr/src/app/data/mathics-django/mathics.sqlite
63+
Operations to perform:
64+
Apply all migrations: auth, contenttypes, sessions, sites, web
65+
Running migrations:
66+
```
67+
68+
In the above when it says `mathics.sqlite not found` an empty one is created. The real location of it outside of the container is in `/tmp/mathics-django/mathics.sqlite`.

script/dmathicsserver

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ set -x
44
# Allow customization using POSIX environment variables:
55
DOCKER=${DOCKER:-docker}
66
MATHICS_DJANGO_DB=${MATHICS_DJANGO_DB:-"mathics.sqlite"}
7-
MATHICS_DJANGO_DB_PATH=${MATHICS_DJANGO_DB_PATH:-DOCKER=/usr/src/app/data mathicsorg/mathics/${MATHICS_DJANGO_DB_PATH}}
7+
MATHICS_DJANGO_DB_PATH=${MATHICS_DJANGO_DB_PATH:-/usr/src/app/.local/var/mathics/${MATHICS_DJANGO_DB}}
88

99
$DOCKER run -it \
1010
--name mathics-web \
1111
--rm \
1212
--env="DISPLAY" \
13-
--env="MATHICS_DJANGO_DB_PATH=$MATHICS_DJANGO_DB_PATH" \
13+
--env "MATHICS_DJANGO_DB_PATH=$MATHICS_DJANGO_DB_PATH" \
1414
--workdir=/app \
1515
--volume="$PWD":/app \
1616
--volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \

0 commit comments

Comments
 (0)