63 lines
1.5 KiB
ReStructuredText
63 lines
1.5 KiB
ReStructuredText
|
|
|
||
|
|
==============
|
||
|
|
Installation
|
||
|
|
==============
|
||
|
|
|
||
|
|
For now, these instructions mostly reflect my own dev workflow. It
|
||
|
|
uses a Python virtual environment but no (Docker) containers.
|
||
|
|
|
||
|
|
Eventually it may make sense to add production deployment steps using
|
||
|
|
Docker etc. - but that will wait for now.
|
||
|
|
|
||
|
|
|
||
|
|
Requirements
|
||
|
|
------------
|
||
|
|
|
||
|
|
WuttaFarm is designed to run on a (Debian-based) Linux machine; YMMV
|
||
|
|
with others.
|
||
|
|
|
||
|
|
|
||
|
|
farmOS
|
||
|
|
~~~~~~
|
||
|
|
|
||
|
|
First you must have a *production* `farmOS`_ instance running
|
||
|
|
somewhere. For more on that see `Hosting farmOS`_.
|
||
|
|
|
||
|
|
.. _farmOS: https://farmos.org
|
||
|
|
.. _Hosting farmOS: https://farmos.org/hosting/
|
||
|
|
|
||
|
|
This must use HTTPS for the OAuth2 workflows to work correctly. (Not
|
||
|
|
sure but it may also need to be at the root of the domain, i.e. no
|
||
|
|
subpath.)
|
||
|
|
|
||
|
|
|
||
|
|
Database
|
||
|
|
~~~~~~~~
|
||
|
|
|
||
|
|
You also must create a PostgreSQL (or MySQL) database for the
|
||
|
|
WuttaFarm app to use. See also :ref:`wuttjamaican:create-appdb`.
|
||
|
|
|
||
|
|
|
||
|
|
App Setup
|
||
|
|
---------
|
||
|
|
|
||
|
|
The short version:
|
||
|
|
|
||
|
|
.. code-block:: sh
|
||
|
|
|
||
|
|
python3 -m venv ./venv
|
||
|
|
./venv/bin/pip install WuttaFarm
|
||
|
|
./venv/bin/wuttafarm install
|
||
|
|
|
||
|
|
The app installer (last command above) will prompt you for DB
|
||
|
|
credentials, and the farmOS URL.
|
||
|
|
|
||
|
|
One of the questions is about data versioning with
|
||
|
|
:doc:`wutta-continuum:index`. This feature will be leveraged more in
|
||
|
|
the future but for the moment doesn't do a whole lot in this app. You
|
||
|
|
are encouraged to enable it anyway.
|
||
|
|
|
||
|
|
When the installer completes it will output a command you can then use
|
||
|
|
to run the web app. Do that and you can then view the app in a
|
||
|
|
browser at http://localhost:9080
|