setup.rst 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. Installation & Configuration
  2. ============================
  3. Quick Install: Running in Docker
  4. --------------------------------
  5. You can run LAKEsuperior in Docker for a hands-off quickstart.
  6. `Docker <http://docker.com/>`__ is a containerization platform that
  7. allows you to run services in lightweight virtual machine environments
  8. without having to worry about installing all of the prerequisites on
  9. your host machine.
  10. 1. Install the correct `Docker Community
  11. Edition <https://www.docker.com/community-edition>`__ for your
  12. operating system.
  13. 2. Clone the LAKEsuperior git repository:
  14. ``git clone https://github.com/scossu/lakesuperior.git``
  15. 3. ``cd`` into repo folder
  16. 4. Run ``docker-compose up``
  17. LAKEsuperior should now be available at ``http://localhost:8000/``.
  18. The provided Docker configuration includes persistent storage as a
  19. self-container Docker volume, meaning your data will persist between
  20. runs. If you want to clear the decks, simply run
  21. ``docker-compose down -v``.
  22. Manual Install (a bit less quick, a bit more power)
  23. ---------------------------------------------------
  24. **Note:** These instructions have been tested on Linux. They may work on
  25. Darwin with little modification, and possibly on Windows with some
  26. modifications. Feedback is welcome.
  27. Dependencies
  28. ~~~~~~~~~~~~
  29. 1. Python 3.5 or greater.
  30. 2. A message broker supporting the STOMP protocol. For testing and
  31. evaluation purposes, `CoilMQ <https://github.com/hozn/coilmq>`__ is
  32. included with the dependencies and should be automatically installed.
  33. Installation steps
  34. ~~~~~~~~~~~~~~~~~~
  35. 1. Create a virtualenv in a project folder:
  36. ``virtualenv -p <python 3.5+ exec path> <virtualenv folder>``
  37. 2. Activate the virtualenv: ``source <path_to_virtualenv>/bin/activate``
  38. 3. Clone this repo:
  39. ``git clone https://github.com/scossu/lakesuperior.git``
  40. 4. ``cd`` into repo folder
  41. 5. Install dependencies: ``pip install -r requirements.txt``
  42. 6. Start your STOMP broker, e.g.: ``coilmq &``. If you have another
  43. queue manager listening to port 61613 you can either configure a
  44. different port on the application configuration, or use the existing
  45. message queue.
  46. 7. Run ``./lsup-admin bootstrap`` to initialize the binary and graph
  47. stores
  48. 8. Run ``./fcrepo``.
  49. Configuration
  50. -------------
  51. The app should run for testing and evaluation purposes without any
  52. further configuration. All the application data are stored by default in
  53. the ``data`` directory.
  54. To change the default configuration you should:
  55. 1. Copy the ``etc.skeleton`` folder to a separate location
  56. 2. Set the configuration folder location in the environment:
  57. ``export FCREPO_CONFIG_DIR=<your config dir location>`` (you can add
  58. this line at the end of your virtualenv ``activate`` script)
  59. 3. Configure the application
  60. 4. Bootstrap the app or copy the original data folders to the new
  61. location if any loction options changed
  62. 5. (Re)start the server: ``./fcrepo``
  63. The configuration options are documented in the files.
  64. **Note:** ``test.yml`` must specify a different location for the graph
  65. and for the binary stores than the default one, otherwise running a test
  66. suite will destroy your main data store. The application will issue an
  67. error message and refuse to start if these locations overlap.
  68. Production deployment
  69. ---------------------
  70. If you like fried repositories for lunch, deploy before 11AM.