Dockerized version of Specify 7. The included Docker image is for version 7.3.1 of the software.
Specify 7 is build upon Specify 6, so you need a running instance of Specify 6.
-
Clone this repository.
git clone https://github.com/rbgvictoria/specify7-docker.git
-
Copy your Specify 6 client into the
specify7/specify6_thick_client
directory. Make sure your dircetory structure looks like in the image below and that there is nospecify6
(or something like that) subfolder between thespecify6_thick_client
folder and thespecify.jar
file and theconfig
subfolder. -
Rename
example.local_specify_settings.py
inspecify7/specify7_config
tolocal_specify_settings.py
-
Add your database connection details in
local_specify_settings.py
. If you want to connect to a local instance of MySQL, usehost.docker.internal
(that works for me on Windows; if it doesn't work on your system, check youretc/hosts
file), notlocalhost
, asDATABASE_HOST
. -
Build the Docker image and start the container
cd specify7-docker docker-compose up -d
Your Specify 7 instance should now be available at
http://localhost:<port>
. I use port number 65001, because I have another webserver instance running on port 80, but you can change the port in thedocker-compose.yml
file. -
To stop the container:
docker-compose stop
-
To destroy the container:
docker-compose down
-
To rebuild the container (for example for a new release of Specify 6):
docker-compose up -d --build
In order to run Specify 7.4.0, all you have to do is replace the Specify 6 client
(specify6_thick_client
) with Specify 6.8.00 and make sure the database you
want to connect to has been upgraded to the new version.
Then:
- Pull the changes from the GitHub repository:
git pull origin master
- Destroy the container:
docker-compose down
- Rebuild the container:
docker-compose up -d --build