Update README.md

This commit is contained in:
teresa.delatorre 2020-12-03 15:30:20 +01:00
parent 0f5cb33d53
commit 4aa3ba0a14
1 changed files with 106 additions and 32 deletions

136
README.md
View File

@ -2,93 +2,164 @@
## Requirements
Docker and docker-compose
- docker
- docker-compose
Additionally, it's necessary to have familiarity with Docker, docker-compose and Docker repositories
Additionally, it's necessary to have familiarity with Docker, docker-compose and Docker repositories.
## Simple customization
There are some environment variables for a simple customization. Find them in the `docker-compose.yml`. The images are ready to work out of the box, although is strongly recommended to change some default values.
### Database: taiga-db
`POSTGRES_DB`, `POSTGRES_USER` and `POSTGRES_PASSWORD`. This vars will be used to create the database for Taiga.
### taiga-db
##### `POSTGRES_DB`, `POSTGRES_USER`, `POSTGRES_PASSWORD`
This vars will be used to create the database for Taiga.
**Important**: these vars should have the same values as `taiga-back` vars.
### API, Admin, and Async: taiga-back
**Database settings**:
### taiga-back and taiga-async
`POSTGRES_DB`, `POSTGRES_USER` and `POSTGRES_PASSWORD`. This vars will be used to connect to the Taiga database.
#### Database settings
*Important*: these vars should have the same values as `taiga-db` vars.
##### `POSTGRES_DB`, `POSTGRES_USER`, `POSTGRES_PASSWORD`
Besides, `POSTGRES_HOST` where the database is set. By default, it's meant to be in the same host as the database service so it uses internal docker names.
This vars will be used to connect to the Taiga database.
**Taiga settings**:
**Important**: these vars should have the same values as `taiga-db` service vars.
`TAIGA_SECRET_KEY` should be the same as this var in `taiga-events` and `taiga-async`
##### `POSTGRES_HOST`
`TAIGA_SITES_SCHEME` and `TAIGA_SITES_DOMAIN` should have the url where this is served: https[://]taiga.mycompany.com
Where the database is set. By default, it's meant to be in the same host as the database service so it uses internal docker names.
**Email Settings**:
#### Taiga settings
By default, email is configured with the *console* backend, which means that the emails will be shown in the stdout.
If you have an smtp service, configure `ENABLE_EMAIL` to "True" and the rest of email settings.
##### `TAIGA_SECRET_KEY`
**Rabbit settings**
Is the secret key of Taiga. Should be the same as this var in `taiga-events` and `taiga-async`
`RABBITMQ_USER` and `RABBITMQ_PASS` are used to leave messages in the rabbitmq services. Those variables should be the same as in `taiga-async-rabbitmq` and `taiga-events-rabbitmq`.
##### `TAIGA_SITES_SCHEME`, `TAIGA_SITES_DOMAIN`
**Github settings**
Should have the url where this is served: https[://]taiga.mycompany.com
#### Email Settings
By default, email is configured with the *console* backend, which means that the emails will be shown in the stdout.<br>
##### `ENABLE_EMAIL`
If you have an smtp service, configure this variable to "True". By default is "False".
##### `DEFAULT_FROM_EMAIL`, `EMAIL_HOST`, `EMAIL_PORT`, `EMAIL_HOST_USER`, `EMAIL_HOST_PASSWORD`
If you have an smtp service configure this variables too.
##### `EMAIL_USE_TLS`
If you use TLS, configure this variable to "True". By default is "False".
##### `EMAIL_USE_SSL`
If you use SSL, configure this variable to "True". By default is "False".
#### Rabbit settings
##### `RABBITMQ_USER`, `RABBITMQ_PASS`
Are used to leave messages in the rabbitmq services. Those variables should be the same as in `taiga-async-rabbitmq` and `taiga-events-rabbitmq`.
#### Github settings
##### `GITHUB_API_CLIENT_ID`, `GITHUB_API_CLIENT_SECRET`
Used for login with Github.
Get these in your profile https://github.com/settings/apps or in your organization profile https://github.com/organizations/{ORGANIZATION-SLUG}/settings/applications
**Gitlab settings**
#### Gitlab settings
##### `GITLAB_API_CLIENT_ID`, `GITLAB_API_CLIENT_SECRET`, `GITLAB_URL`
Used for login with GitLab.
Get these in your profile https://{YOUR-GITLAB}/profile/applications or in your organization profile https://{YOUR-GITLAB}/admin/applications
### Front: taiga-front
### taiga-async-rabbitmq
`TAIGA_URL` where this Taiga instance should be served. It should be the same as `TAIGA_SITES_SCHEME`://`TAIGA_SITES_DOMAIN`.
##### `RABBITMQ_ERLANG_COOKIE`
`TAIGA_WEBSOCKETS_URL` to connect to the events. This should have the same value as `TAIGA_SITES_DOMAIN`, ie: ws://taiga.mycompany.com
Is the secret erlang cookie.
**Github settings**
##### `RABBITMQ_DEFAULT_USER`, `RABBITMQ_DEFAULT_PASS`, `RABBITMQ_DEFAULT_VHOST`
This vars will be used to connect to rabbitmq.
### taiga-front
##### `TAIGA_URL`
Where this Taiga instance should be served. It should be the same as `TAIGA_SITES_SCHEME`://`TAIGA_SITES_DOMAIN`.
##### `TAIGA_WEBSOCKETS_URL`
To connect to the events. This should have the same value as `TAIGA_SITES_DOMAIN`, ie: ws://taiga.mycompany.com
##### `GITHUB_CLIENT_ID`
Used for login with Github.
Get these in your profile https://github.com/settings/apps or in your organization profile https://github.com/organizations/{ORGANIZATION-SLUG}/settings/applications
**Gitlab settings**
##### `GITLAB_CLIENT_ID`, `GITLAB_URL`
Used for login with GitLab.
Get these in your profile https://{YOUR-GITLAB}/profile/applications or in your organization profile https://{YOUR-GITLAB}/admin/applications
### Events: taiga-events
### taiga-events
`TAIGA_SECRET_KEY` should be the same as this var in `taiga-back`
##### `RABBITMQ_USER`, `RABBITMQ_PASS`
Are used to read messages from rabbitmq
##### `TAIGA_SECRET_KEY`
Should be the same as this var in `taiga-back`
### taiga-events-rabbitmq
##### `RABBITMQ_ERLANG_COOKIE`
Is the secret erlang cookie.
##### `RABBITMQ_DEFAULT_USER`, `RABBITMQ_DEFAULT_PASS`, `RABBITMQ_DEFAULT_VHOST`
This vars will be used to connect to rabbitmq.
## Storage
We have 3 named volumes configured: `taiga-static-data` for statics, `taiga-media-data` for medias and `taiga-db-data` for the database.
`RABBITMQ_USER` and `RABBITMQ_PASS` are used to read messages from rabbitmq.
## Complex customization
For a complex customization, you can use configuration files, mapped to a specific directories inside the containers.
For a complex customization, you can use configuration files, mapped to specific directories inside the containers.
**taiga-back**
### taiga-back
Map a Python configuration file to `/taiga-back/settings/config.py`. You can use (this file)[https://github.com/taigaio/taiga-back/blob/taiga-6/docker/config.py] as an example.
*Important*: if you use your own configuration file, don't forget to add contribs to `INSTALLED_APPS` (check the example `config.py`).
**Important**: if you use your own configuration file, don't forget to add contribs to `INSTALLED_APPS` (check the example `config.py`).
**taiga-front**
### taiga-front
Map a `conf.json`configuration file to `/usr/share/nginx/html/conf.json`. You can use (this file)[https://github.com/taigaio/taiga-front/blob/taiga-6/docker/conf.json.template] as an example.
## Before running
You have to configure an admin user:
@ -107,8 +178,11 @@ $ docker-compose up -d
Default access for the application is **http://localhost:9000**.
## One shot commands
`docker-compose-inits.yml` lets launch manage.py commands on the back instance:
```sh
$ docker-compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage [COMMAND]
```