feat(doc): recalage du README sur le cookie cutter
Parent
f2cb301e0e
révision
51f349a46e
78
README.md
78
README.md
|
@ -14,16 +14,16 @@ GvoT est un logiciel libre pour organiser des votations à large échelle.
|
|||
|
||||
On a Debian-based host - running at least Debian Buster:
|
||||
|
||||
```bash
|
||||
```shell
|
||||
$ sudo apt install python3 virtualenv git make
|
||||
$ git clone https://forge.cliss21.org/cliss21/gvot
|
||||
$ cd gvot/
|
||||
$ cd gvot
|
||||
|
||||
$ make init
|
||||
# A configuration file will be created interactively; you can uncomment:
|
||||
# ENV=development
|
||||
|
||||
A configuration will be created interactively; uncomment
|
||||
ENV=development
|
||||
|
||||
$ make test # optional
|
||||
#$ make test # optional
|
||||
$ make serve
|
||||
```
|
||||
|
||||
|
@ -34,12 +34,12 @@ Then visit [http://127.0.0.1:8000/](http://127.0.0.1:8000/) in your web browser.
|
|||
|
||||
On a Debian-based host - running at least Debian Stretch, you will need the
|
||||
following packages:
|
||||
- python3
|
||||
- virtualenv
|
||||
- make
|
||||
- git (recommended for getting the source)
|
||||
- python3-mysqldb (optional, in case of a MySQL / MariaDB database)
|
||||
- python3-psycopg2 (optional, in case of a PostgreSQL database)
|
||||
- `python3`
|
||||
- `virtualenv`
|
||||
- `make`
|
||||
- `git` (recommended for getting the source)
|
||||
- `python3-mysqldb` (optional, in case of a MySQL / MariaDB database)
|
||||
- `python3-psycopg2` (optional, in case of a PostgreSQL database)
|
||||
|
||||
### Quick start
|
||||
|
||||
|
@ -66,60 +66,24 @@ In a production setup, you will need to add cron jobs in order to flush mail
|
|||
queues. See below. If you don't want to be able to send hundreds of emails you
|
||||
might drop EMAIL_BACKEND from the settings and forget about it.
|
||||
|
||||
### Manual installation
|
||||
|
||||
If you don't want to use the `Makefile` facilities, here is what is done behind the scene.
|
||||
|
||||
It assumes that you have downloaded the last release of GvoT,
|
||||
extracted it and that you moved to that folder.
|
||||
|
||||
1. Start by creating a new virtual environment under `./venv` and activate it:
|
||||
|
||||
$ virtualenv --system-site-packages ./venv
|
||||
$ source ./venv/bin/activate
|
||||
|
||||
2. Install the required Python packages depending on your environment:
|
||||
|
||||
$ pip install -r requirements/production.txt
|
||||
... or ...
|
||||
$ pip install -r requirements/development.txt
|
||||
|
||||
3. Configure the application by setting the proper environment variables
|
||||
depending on your environment. You can use the `config.env.example` which
|
||||
give you the main variables with example values.
|
||||
|
||||
$ cp config.env.example config.env
|
||||
$ nano config.env
|
||||
$ chmod go-rwx config.env
|
||||
|
||||
Note that this `./config.env` file will be loaded by default when the
|
||||
application starts. If you don't want that, just move this file away or set
|
||||
the `READ_CONFIG_FILE` environment variable to `0`.
|
||||
|
||||
4. Create the database tables - it assumes that you have created the database
|
||||
and set the proper configuration to use it:
|
||||
|
||||
$ ./manage.py migrate
|
||||
|
||||
That's it! You should now be able to start the Django development server to
|
||||
check that everything is working fine with:
|
||||
|
||||
$ ./manage.py runserver
|
||||
|
||||
## Deployment
|
||||
|
||||
### Web server
|
||||
### Web application
|
||||
|
||||
#### NginX with uWSGI
|
||||
|
||||
Here is an example deployment using NGINX - as the Web server - and uWSGI - as
|
||||
the application server.
|
||||
|
||||
##### uWSGI
|
||||
|
||||
The uWSGI configuration doesn't require a special configuration, except that we
|
||||
are using Python 3 and a virtual environment. Note that if you serve the
|
||||
application on a sub-location, you will have to add `route-run = fixpathinfo:`
|
||||
to your uWSGI configuration (from
|
||||
[v2.0.11](https://uwsgi-docs.readthedocs.io/en/latest/Changelog-2.0.11.html#fixpathinfo-routing-action)).
|
||||
to your uWSGI configuration (available since [v2.0.11][1]).
|
||||
|
||||
[1]: https://uwsgi-docs.readthedocs.io/en/latest/Changelog-2.0.11.html#fixpathinfo-routing-action
|
||||
|
||||
##### NGINX
|
||||
|
||||
In the `server` block of your NGINX configuration, add the following blocks and
|
||||
set the path to your application instance and to the uWSGI socket:
|
||||
|
@ -144,7 +108,7 @@ location = /favicon.ico {
|
|||
}
|
||||
```
|
||||
|
||||
#### Apache with modpython
|
||||
#### Apache with mod_wsgi
|
||||
|
||||
Here is an example deployment using Apache as the Web server.
|
||||
|
||||
|
|
Chargement…
Référencer dans un nouveau ticket