Skip to content
Docker image for Zotero Data Server
Perl Shell PHP Dockerfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
dataserver initial commit Aug 23, 2016
mysql initial commit Aug 23, 2016
patches initial commit Aug 23, 2016
zss initial commit Aug 23, 2016
Dockerfile Revert to wheezy-backports version, because jessie failed (put in a d… Aug 17, 2018

Look at which is more frequently maintained than this repo

Docker image for Zotero Data Server

This image was build following the instructions for installing a Zotero dataserver at (, which is an updated procedure of this document.

Build the image

docker build -t zotero .

The resulting image is configured to run a dataserver on https://localhost/.

To customize the installation the following files must be edited:

  • SSL certificate: apache/zotero.{cert,key}. The current certificate is self-signed for localhost.
  • Apache site config: apache/sites-zotero.conf.
  • Dataserver: dataserver/ to match the site config.
  • MySQL credentials/passwords: mysql/setup\_db and dataserver/ accordingly.

The build procedure also creates a couple of test users using the user administration tools: test:test and test2:test2.

Start the dataserver

# 1st run. Named container simplifies the access (to the data) across runs
docker run  -p 80:80 -p 443:443 --name=FOO -t -i zotero 
# all the subsequent runs
docker start FOO; docker attach FOO

This will start the dataserver on https://localhost/. Because of the self-signed certificate some browsers may refuse to connect to the server.

Patch the standalone client to use the new dataserver

Following the procedure of ( Download the Zotero client, and change these two lines in resource/config.js inside the zotero.jar archive (zip)

SYNC_URL: 'https://localhost/sync/',
API_URL: 'https://localhost/',

If the server uses a self-signed certificate an exception should be added to the client. A cert\_override.txt file must be added to the user profile generated by zotero client:

~/Library/Application\ Support/Zotero/Profiles/<random>.default/      MAC
~/.zotero/Profiles/<random>.default/                                  Linux
c:Users/<username>/AppData/Roaming/Zotero/Zotero/                     Win

The cert\_override.txt file can be generated with Firefox as explained here ( The override file in this directory corresponds to the self-signed certificate in the apache directory.

User administration

cd /srv/zotero/dataserver/admin 
./add_user 101 testuser  testpassword
./add_user 102 testuser2 testpassword2
./add_group -o testuser -f members -r members -e members testgroup 
./add_groupuser testgroup testuser2 member 

add_user is a patched version of the script from that allows to set the password from the command line.

You can’t perform that action at this time.