Installation with Virtual Environment
As a slightly more lightweight approach, the whole system can also be set up in a Virtual Environment. This solution will definitely be lighter on system resources like disk space and memory.
Python packages
If not done already, install the following packages (on Linux):
sudo apt-get install python3-venv virtualenv
EOA Publication Platform
Clone the source files for the publication platform:
git clone https://github.molgen.mpg.de/EditionOpenAccess/eoa-1.5.git
Additional deployment steps
Note
A small note before you continue, as it is not easy to move a virtual environment after installation.
If you plan to use this installation on a production server, consider the additional steps of creating a separate user and a daemon and running the service in a non-user directory for more security and stability. See :doc:`the main documentation <main:chapters/djangodeploy>`.
Create Virtual Environment
You are free to choose a name of your choice here:
virtualenv -p python3 eoapp_ve cd eoapp_ve source bin/activate
Installation of the system
The next steps set up the EOA Publication Platform:
pip install djangocms-installer lxml djangocms --cms-version stable eoapp pip uninstall djangocms-googlemap
Submodules – Further development planned?
If you plan on further developing the submodules of the platform, consider using the following commands for installation. With this, the submodules are located in the src
directory on root level and in version control:
pip install -e git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoapublications.git#egg=django-eoapublications pip install -e git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaauthors.git#egg=django-authors pip install -e git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaseries.git#egg=django-series pip install -e git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaforthcoming.git#egg=django-forthcoming pip install -e git+https://github.molgen.mpg.de/EditionOpenAccess/django-opds.git#egg=django-opds
Otherwise, use these commands to install them deeper in the system:
pip install git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoapublications pip install git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaauthors pip install git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaseries pip install git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaforthcoming pip install git+https://github.molgen.mpg.de/EditionOpenAccess/django-opds
Adding the webdesign and templates and settings
If you haven't done so yet, see the :doc:`webdesign documentation <webplat:index>` for installation and usage. For the webdesign, you need the app.js
and app.css
files as well as the assets
directory. After having built these files or obtained them from another source, copy them into the new platform:
cd <path_to_webdesign_platform>/dist cp -r app.* assets/ <path_to_eoapp_ve>/eoapp/eoapp/static/
Similarly, add the templates and settings from the EOA-1.5 repository:
cd <path_to_eoapp_ve> rm -r eoapp/eoapp/templates cp -rv <path_to_eoa-1.5>/src/eoa/templates <path_to_eoapp_ve>/eoapp/eoapp/ cp <path_to_eoa-1.5>/src/eoa/settings_lite.py <path_to_eoapp_ve>/eoapp/eoapp/settings.py cp <path_to_eoa-1.5>/src/eoa/urls.py <path_to_eoapp_ve>/eoapp/eoapp/
Importing data and setting up the database
Import some basic CMS pages and settings:
cd eoapp python manage.py loaddata <path_to_eoa-1.5>/fixtures/cms_dummy.json
Finally, update the database by migrating:
python manage.py makemigrations python manage.py migrate --run-syncdb
Run the server
It should now be possible to run a server and access the site through the browser:
python manage.py runserver 0.0.0.0:8000