Running with Docker¶
Prerequisites¶
You will need to have Docker installed. See https://docs.docker.com/install/.
You will also need a copy of the works database (library.sqlite).
Getting the TextCritical Docker image running¶
Step 1: Get the textcritical image from Docker Hub¶
docker pull lukemurphey/textcritical
Step 2: Create the necessary directories on the host file-system¶
You will need to create a series of directories on your host file-system to store content. To do so create a directory such as "textcritical" and create a directory within it named "db".
Step 3: Place your database files in "db"¶
Put library.sqlite under the "db" directory. You can use the library of works attached to this wiki entry to get started quickly (although it only includes one work).
- db/library.sqlite
- db/textcritical.sqlite
Step 4: Run the container¶
docker run --restart always -d -p 8080:8080/tcp -v /opt/textcritical/db:/db lukemurphey/textcritical
You should now be able to access TextCritical on port 8080 on your localhost (e.g. http://localhost:8080).
The instance is setup with a default login name of "admin" and a password of "changeme". You can log into the administration system at the URL "admin" (e.g. http://localhost:8080/admin/).
The container has several paths you may want to override:
Path | Description | Notes |
/db | The location of the databases | |
/usr/src/app/media/files | The location where generated files will be stored (for eBooks) | This will be populated when a user requests an ebook |
/usr/src/app/var/indexes | Where the search indexes will be stored | |
/usr/src/app/var/cache | The file-system based cache | This cache is used to improve web-server response time |
/static | A copy of the static resources | Define this path if you want to have another web-server serve the static content |