Coder Social home page Coder Social logo

riotkit-org / docker-taiga Goto Github PK

View Code? Open in Web Editor NEW
55.0 4.0 9.0 172 KB

Production-ready docker container for Taiga https://taiga.io

Home Page: https://quay.io/repository/riotkit/taiga?tab=tags

License: GNU General Public License v3.0

Dockerfile 23.15% Python 33.74% Shell 11.61% HTML 31.50%
taiga docker taiga-back taiga-front taiga-docker taiga-events kanban kanban-board planning jira

docker-taiga's People

Contributors

andrey013 avatar benhutchins avatar blackandred avatar egv avatar h44z avatar mazafard avatar phdd avatar unixfox avatar zicklag avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

docker-taiga's Issues

Unable to access Taiga console

I cloned the repo updated the two things in .env file TAIGA_HOSTNAME=taiga.mylaptop and TAIGA_SECRET_KEY=MySecretKey. Then started the container using themake start command. It automatically downloads the docker image and starting the container. But when I try to access the Taiga web console, I am seeing an error page "Something happened and our Oompa Loompas are working on it". I doubt it got stuck at Trying import local.py settings...

Status: Downloaded newer image for quay.io/riotkit/taiga:4.2.14
Creating taiga_postgres_1 ... done
Creating taiga_taiga_1    ... done
Attaching to taiga_postgres_1, taiga_taiga_1
postgres_1  | 
postgres_1  | PostgreSQL Database directory appears to contain a database; Skipping initialization
postgres_1  | 
taiga_1     |  >> Setting user id and group id
taiga_1     | usermod: invalid user ID ''
postgres_1  | 2019-12-18 05:42:17.142 UTC [1] LOG:  starting PostgreSQL 12.1 (Debian 12.1-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
taiga_1     | groupmod: invalid group ID ''
taiga_1     |  >> Correcting permissions
postgres_1  | 2019-12-18 05:42:17.143 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres_1  | 2019-12-18 05:42:17.143 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres_1  | 2019-12-18 05:42:17.343 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1  | 2019-12-18 05:42:17.959 UTC [25] LOG:  database system was shut down at 2019-12-18 05:39:28 UTC
postgres_1  | 2019-12-18 05:42:18.007 UTC [1] LOG:  database system is ready to accept connections
taiga_1     |  >> Preparing configuration files...
taiga_1     |  HINT: Add your files into /etc/nginx/extensions.d to include them in NGINX configuration
taiga_1     |  >> Preparing a database migration
taiga_1     | Running database check
taiga_1     | Connecting to database:
taiga_1     | dbname='taigadb' user='postgres' host='postgres' password='password'
taiga_1     | + nginx -t
taiga_1     | nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
taiga_1     | nginx: configuration file /etc/nginx/nginx.conf test is successful
taiga_1     | + chown taiga:taiga /usr/src/taiga-back/media
taiga_1     | + exec supervisord -c /etc/supervisord.conf
taiga_1     | 2019-12-18 05:44:58,237 INFO Set uid to user 0 succeeded
taiga_1     | 2019-12-18 05:44:58,241 INFO supervisord started with pid 1
taiga_1     | 2019-12-18 05:44:59,245 INFO spawned: 'nginx' with pid 33
taiga_1     | 2019-12-18 05:44:59,249 INFO spawned: 'backend' with pid 34
taiga_1     | 2019-12-18 05:44:59,524 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [34] [INFO] Starting gunicorn 19.9.0
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,524 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [34] [INFO] Listening at: http://127.0.0.1:8000 (34)
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,525 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [34] [INFO] Using worker: sync
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,528 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [41] [INFO] Booting worker with pid: 41
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,573 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [42] [INFO] Booting worker with pid: 42
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,672 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [45] [INFO] Booting worker with pid: 45
taiga_1     | 
taiga_1     | 2019-12-18 05:44:59,678 DEBG 'backend' stderr output:
taiga_1     | [2019-12-18 05:44:59 +0000] [46] [INFO] Booting worker with pid: 46
taiga_1     | 
taiga_1     | 2019-12-18 05:45:00,125 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     | 
taiga_1     | 2019-12-18 05:45:00,180 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     | 
taiga_1     | 2019-12-18 05:45:00,356 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     | 
taiga_1     | 2019-12-18 05:45:00,356 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
taiga_1     | 2019-12-18 05:45:00,357 INFO success: backend entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
taiga_1     | 2019-12-18 05:45:00,363 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     | 
taiga_1     | 2019-12-18 05:45:20,874 DEBG 'nginx' stdout output:
taiga_1     | 127.0.0.1 - - [18/Dec/2019:05:45:20 +0000] "GET / HTTP/1.1" 200 91976 "-" "curl/7.64.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,747 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET / HTTP/1.1" 200 91976 "-" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,900 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET /v-1569907893851/styles/theme-taiga.css HTTP/1.1" 200 379032 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,902 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET /v-1569907893851/js/libs.js HTTP/1.1" 200 1119550 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,903 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET /v-1569907893851/svg/spinner-circle.svg HTTP/1.1" 200 2676 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,905 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET /v-1569907893851/js/templates.js HTTP/1.1" 200 651813 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:15,906 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:15 +0000] "GET /v-1569907893851/js/app-loader.js HTTP/1.1" 200 1945 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,362 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /conf.json HTTP/1.1" 200 421 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,378 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/fonts/OpenSans-Regular.ttf HTTP/1.1" 200 217360 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,384 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/images/favicon.png HTTP/1.1" 200 6979 "-" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,417 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/emojis/emojis-data.json HTTP/1.1" 200 91804 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,417 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/js/app.js HTTP/1.1" 200 747931 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,716 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/locales/taiga/locale-en.json HTTP/1.1" 200 74672 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,721 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/images/notification-decoration.png HTTP/1.1" 200 10317 "http://172.16.12.70/" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,804 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/fonts/OpenSans-Semibold.ttf HTTP/1.1" 200 221328 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,983 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/images/menu-vert.png HTTP/1.1" 200 9390 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,984 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/images/discover.png HTTP/1.1" 200 8211 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:16,989 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:16 +0000] "GET /v-1569907893851/fonts/OpenSans-Light.ttf HTTP/1.1" 200 222412 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:17,077 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:17 +0000] "GET /v-1569907893851/svg/logo.svg HTTP/1.1" 200 1548 "http://172.16.12.70/discover" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:17,082 DEBG 'nginx' stdout output:
taiga_1     | 172.16.12.70 - - [18/Dec/2019:05:46:17 +0000] "GET /v-1569907893851/images/invitation_bg.jpg HTTP/1.1" 200 188107 "http://172.16.12.70/v-1569907893851/styles/theme-taiga.css" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0" "-"
taiga_1     | 
taiga_1     | 2019-12-18 05:46:21,387 DEBG 'nginx' stdout output:
taiga_1     | 127.0.0.1 - - [18/Dec/2019:05:46:21 +0000] "GET / HTTP/1.1" 200 91976 "-" "curl/7.64.0" "-"

Health check

I think a more precised health checking should be created that would check the backend and frontend setup, the connectivity with SMTP and possibly with LDAP.

Email notification not working

I have updated the SMTP server details in .env file, but I am not getting any email notification (when a task is assigned, task status change, etc). I have tested the SMTP details by triggering a test mail using the command,
python manage.py sendtestemail [email protected]
I got the test mail in my inbox, whereas I am not getting any other email from Taiga. I manually triggered the email using python manage.py send_notifications, and got all my notification emails.

Below is my SMTP configuration in .env file,

# To use an external SMTP for emails, fill in these values:
TAIGA_ENABLE_EMAIL=True
[email protected]
TAIGA_EMAIL_USE_TLS=True
TAIGA_EMAIL_HOST=my-smtp-server
TAIGA_EMAIL_PORT=587
TAIGA_EMAIL_USER=XXXXXXXXXXXXXXXXXXXXXXXXXX
TAIGA_EMAIL_PASS=XXXXXXXXXXXXXXXXXXXXXXXXXXX

# events
#TAIGA_ENABLE_EVENTS=false
#TAIGA_EVENTS_HOST=events
#TAIGA_BROKER_URL=amqp://guest:guest@rabbit:5672
#TAIGA_REDIS_URL=redis://redis:6379/0

Do we need to have SSL support in NGINX?

Hi,

I personally don't think that the docker container should use SSL certificate by it's own on the internal webserver. The certificate should be managed by a gateway webserver in the docker network. So I do not see a reason to maintain such functionality - I don't think anybody on production would use such functionality.

What do you think?
The SSL support in NGINX is coming there from forked repository, it wasnt even fully tested.

How to connect Taiga to Events server?

Thanks so much for building this, I've spent about 4 days going round in circles before finding this starting at ben Hutchins repo but not liking that it was out of date, ended up building a whole vm which worked perfectly but refused to use our reverse proxy properly, then found this when looking at the issues section at benhutchins repo. :). It's amazing!

Can you give me any hints on how to set up the events server?

I don't mind writing up a doc in return or something, I'm just a bit confused about which bits are needed for this docker vs what would normally be needed for a typical setup e.g. VM.

I assume I need to:

1 Install a redis container
2 Install rabbitmq container
3 Install the official events server from taiga
4Configure TAIGA_ENABLE_EVENTS, TAIGA_EVENTS_HOST, TAIGA_REDIS_URL, TAIGA_BROKER_URL
5 Configure whatever needs to be configured in the above containers

That's my thought anyway. Any help would be appreciated!

Marshalleq

Migrate to Alpine 3.10

The image is pretty big in my opinion, its possible I guess to move it to Alpine 3.10.

Strange behaviour when default port binding is changed

The task ":start" ended with a failure

On server I'm using Centos8. command returned non-zero exit status 1 is reported. Naturally, container is down when :start is triggered. With the identical config, on Arch everything works fine.

Dunno if it's associated with it, but Taiga seems NOT loading ldap configuration (Error connecting to LDAP server: port must be an integer appears, even when I change it manually in the container)

LDAP Support

What do you think about building in LDAP support with using this Taiga plugin. It could be optional of course.

I need LDAP support for my Taiga instance so I would be glad to work it into this image if you don't mind. I'd rather put it into this image than run my own fork of it.

Do we still need this image, when there is Taiga 6?

Hi,

I'm opening the discussion - what's good in this image that should keep it still maintained even if there is a official image now?
I'm not familiar so far with the official container, so I need some feedback.

Please assume that if our image would stay then it would be up-to-date with Taiga 6 anyway.

Create integration tests and make them running on CI

New images are automatically built whenever Taiga is released, but we do not do any tests. I think we should be running some kind of automatic tests before releasing an image.

Tests should be checking:

  • If application is starting up and that backend + frontend are working, not only if NGINX serves a page
  • If plugins are plugged in

Docker-compose.yml traefik, taiga displays strange landing page.

Hello all,

I am using the following docker-compose.yml file to start Taiga with Traefik.

version: "3"

services:
  taiga:
    image: quay.io/riotkit/taiga:5.0.6
    depends_on:
      - postgres
    volumes:
      - taigamedia:/usr/src/taiga-back/media
    networks:
      - backend
    restart: always
    environment:
      TAIGA_SECRET_KEY: password_key
      TAIGA_HOSTNAME: somehost.com
      TAIGA_SCHEME: https
      TAIGA_DB_NAME: taiga
      TAIGA_DB_USER: taiga
      TAIGA_DB_HOST: postgres
      TAIGA_DB_PASSWORD: password
    labels:
      - traefik.enable=true
      - traefik.frontend.rule=Host:somehost.com; PathPrefixStrip:/taiga
      - traefik.backend=taiga
      - traefik.docker.network=frontend
      - traefik.port=80
      - traefik.frontend.headers.referrerPolicy=no-referrer
      - traefik.frontend.headers.SSLRedirect=true
      - traefik.frontend.headers.contentTypeNosniff=true

  postgres:
    image: postgres
    restart: always
    environment:
      POSTGRES_DB: taiga
      POSTGRES_PASSWORD: password
      POSTGRES_USER: taiga
    volumes:
      - postgrestaiga:/var/lib/postgresql/data
    networks:
      - backend
    labels:
      - traefik.enable=false

volumes:
  taigamedia:
  postgrestaiga:

networks:
  backend:
    external: true

The compose file executes successfully, however, when heading to hostname.com/taiga the following is displayed.
taiga

Am I missing something obvious here?

Thanks.

chown: cannot access '/var/run/nginx.pid': No such file or directory

When docker-compose restart taiga I get this error that only occurs when taiga restart:

taiga_1     |  >> Setting user id and group id
taiga_1     | usermod: no changes
taiga_1     |  >> Correcting permissions
taiga_1     | chown: cannot access '/var/run/nginx.pid': No such file or directory

A docker-compose down is then required to force the container to rebuild and thus temporary fixing the error.

nginx HTTPS with Let's Encrypt SSL certificates

First of all, many thanks for the fine docker image!

Please, do you have a recommended way how to serve taiga by https with certificates obtained from Let's Encrypt?

I suppose I will have to

  1. set TAIGA_SCHEME=https in .env

  2. edit docker-taiga/container-files/opt/taiga-conf/nginx/nginx.conf.j2

Official instructions may serve as a good starting point for this:
https://taigaio.github.io/taiga-doc/dist/setup-production.html#_taiga_hardening_https

However, I will have to add the details for Let's Encrypt certificate renewals at least in the nginx config.

  1. install and configure certbot within the taiga container.

I still have to figure out how to perform this last step the right way due to my limited experience with docker.

Please, am I right with the procedure? Or do you have any relevant recommendations? Clear instructions would be truly appreciated!

Wishing you all the best.
David

Taiga container exited with code 2

I tried to launch the containers but it exited with code 2. Below are the logs,

[user@test-pc taiga]# make start
Recreating taiga_postgres_1 ... done
Recreating taiga_taiga_1    ... done
Attaching to taiga_postgres_1, taiga_taiga_1
taiga_1     |  >> Setting user id and group id
taiga_1     | usermod: no changes
taiga_1     |  >> Correcting permissions
postgres_1  | 
postgres_1  | PostgreSQL Database directory appears to contain a database; Skipping initialization
postgres_1  | 
postgres_1  | 2020-01-07 12:22:15.667 UTC [1] LOG:  starting PostgreSQL 12.1 (Debian 12.1-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
postgres_1  | 2020-01-07 12:22:15.667 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres_1  | 2020-01-07 12:22:15.667 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres_1  | 2020-01-07 12:22:15.669 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1  | 2020-01-07 12:22:15.683 UTC [24] LOG:  database system was shut down at 2020-01-07 12:21:02 UTC
postgres_1  | 2020-01-07 12:22:15.688 UTC [1] LOG:  database system is ready to accept connections
taiga_1     |  >> Preparing configuration files...
taiga_1     |  HINT: Add your files into /etc/nginx/extensions.d to include them in NGINX configuration
taiga_1     |  >> Enabling plugins
taiga_1     |  >> Preparing a database migration
taiga_1     | Running database check
taiga_1     | Connecting to database:
taiga_1     | dbname='taiga' user='postgres' host='postgres' password='password'
taiga_1     | Database does not appear to be setup.
taiga_taiga_1 exited with code 2

Migrations do not finish

On rkd :start, the db migrations do not finish.
This results in missing db fields and admin account is not created.

Running the migrations from within the container and loading the initial user fixture resolves the issue but should be properly done by the script.

Making `make start` work with existing database

docker-compose.yaml

version: '2'

volumes:
    media:

services:
    taiga:
        image: quay.io/riotkit/taiga:${VERSION}
        environment:
            POSTGRES_DB: ${TAIGA_DB_NAME}
            POSTGRES_PASSWORD: ${TAIGA_DB_PASSWORD}
            POSTGRES_USER: ${TAIGA_DB_USER}
        extra_hosts:
            - "database:172.19.0.1"
        ports:
            - 127.0.0.1:80:80
        volumes:
            # all data placed in volumes are kept between container updates/deletion/recreation
            - media:/usr/src/taiga-back/media
        env_file:
            - .env

Only change really in .env would be:

TAIGA_DB_HOST=database

Migrate from 5.0 to 5.5

Placeholder for how to do this - presently, simply pulling the new version fails. Anyone else done this and know how?

Add OIDC as an authentication option

Hi, thanks for a great docker image, the best I have found for taiga.

It would be great to add OIDC as an additional authentication option to work with applications like keycloak, see resources below. I plan to have a look into this when I have some time. It would be great to get your thoughts.

OIDC plugin:

https://github.com/taigaio/taiga-contrib-oidc-auth

Example implementation (playbook) from fedora infra:

https://pagure.io/fedora-infra/ansible/blob/3f52048722b36a1d8f6b840563d2f81fda503f19/f/roles/taiga

Default credentails fail

Issue

Default credentials fail

Possible issues

local.py seems to be unimported

Data

  1. Status: pure install
  2. Debug: true
  3. Credentials admin 123123
  4. Default page (/discover): Something happened and our Oompa Loompas are working on it.
postgres_1  | The files belonging to this database system will be owned by user "postgres".
postgres_1  | This user must also own the server process.
postgres_1  |
postgres_1  | The database cluster will be initialized with locale "en_US.utf8".
postgres_1  | The default database encoding has accordingly been set to "UTF8".
postgres_1  | The default text search configuration will be set to "english".
postgres_1  |
postgres_1  | Data page checksums are disabled.
taiga_1     |  >> Setting user id and group id
postgres_1  |
postgres_1  | fixing permissions on existing directory /var/lib/postgresql/data ... ok
postgres_1  | creating subdirectories ... ok
postgres_1  | selecting dynamic shared memory implementation ... posix
postgres_1  | selecting default max_connections ... 100
postgres_1  | selecting default shared_buffers ... 128MB
postgres_1  | selecting default time zone ... Etc/UTC
postgres_1  | creating configuration files ... ok
taiga_1     | usermod: invalid user ID ''
taiga_1     | groupmod: invalid group ID ''
taiga_1     |  >> Correcting permissions
postgres_1  | running bootstrap script ... ok
taiga_1     |  >> Preparing configuration files...
taiga_1     |  HINT: Add your files into /etc/nginx/extensions.d to include them in NGINX configuration
postgres_1  | performing post-bootstrap initialization ... ok
taiga_1     |  >> Preparing a database migration
taiga_1     | Running database check
postgres_1  | syncing data to disk ... ok
postgres_1  |
postgres_1  | initdb: warning: enabling "trust" authentication for local connections
postgres_1  | You can change this by editing pg_hba.conf or using the option -A, or
postgres_1  | --auth-local and --auth-host, the next time you run initdb.
postgres_1  |
postgres_1  | Success. You can now start the database server using:
postgres_1  |
postgres_1  |     pg_ctl -D /var/lib/postgresql/data -l logfile start
postgres_1  |
postgres_1  | waiting for server to start....2019-11-11 17:08:17.109 UTC [42] LOG:  starting PostgreSQL 12.0 (Debian 12.0-2.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
postgres_1  | 2019-11-11 17:08:17.168 UTC [42] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1  | 2019-11-11 17:08:17.498 UTC [43] LOG:  database system was shut down at 2019-11-11 17:08:07 UTC
postgres_1  | 2019-11-11 17:08:17.582 UTC [42] LOG:  database system is ready to accept connections
postgres_1  |  done
postgres_1  | server started
postgres_1  | CREATE DATABASE
postgres_1  |
postgres_1  |
postgres_1  | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*
postgres_1  |
postgres_1  | waiting for server to shut down....2019-11-11 17:08:21.135 UTC [42] LOG:  received fast shutdown request
postgres_1  | 2019-11-11 17:08:21.238 UTC [42] LOG:  aborting any active transactions
postgres_1  | 2019-11-11 17:08:21.248 UTC [42] LOG:  background worker "logical replication launcher" (PID 49) exited with exit code 1
postgres_1  | 2019-11-11 17:08:21.249 UTC [44] LOG:  shutting down
postgres_1  | 2019-11-11 17:08:21.666 UTC [42] LOG:  database system is shut down
postgres_1  |  done
postgres_1  | server stopped
postgres_1  |
postgres_1  | PostgreSQL init process complete; ready for start up.
postgres_1  |
postgres_1  | 2019-11-11 17:08:21.917 UTC [1] LOG:  starting PostgreSQL 12.0 (Debian 12.0-2.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
postgres_1  | 2019-11-11 17:08:21.917 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres_1  | 2019-11-11 17:08:21.918 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres_1  | 2019-11-11 17:08:22.040 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1  | 2019-11-11 17:08:22.294 UTC [60] LOG:  database system was shut down at 2019-11-11 17:08:21 UTC
postgres_1  | 2019-11-11 17:08:22.488 UTC [1] LOG:  database system is ready to accept connections
taiga_1     | Connecting to database:
taiga_1     | dbname='taigadb' user='postgres' host='postgres' password='password'
taiga_1     | Database does not appear to be setup.
taiga_1     | Configuring initial database
taiga_1     | Trying import local.py settings...
taiga_1     | Operations to perform:
taiga_1     |   Apply all migrations: admin, attachments, auth, bitbucket, contact, contenttypes, custom_attributes, djmail, easy_thumbnails, epics, external_apps, feedback, github, gitlab, gogs, history, issues, likes, milestones, notifications, projects, references, sessions, settings, tasks, timeline, users, userstorage, userstories, votes, webhooks, wiki
taiga_1     | Running migrations:
taiga_1     |   Applying contenttypes.0001_initial... OK
taiga_1     |   Applying users.0001_initial... OK
taiga_1     |   Applying admin.0001_initial... OK
taiga_1     |   Applying admin.0002_logentry_remove_auto_add... OK
taiga_1     |   Applying users.0002_auto_20140903_0916... OK
taiga_1     |   Applying projects.0001_initial... OK
taiga_1     |   Applying projects.0002_auto_20140903_0920... OK
taiga_1     |   Applying attachments.0001_initial... OK
taiga_1     |   Applying attachments.0002_add_size_and_name_fields... OK
taiga_1     |   Applying attachments.0003_auto_20150114_0954... OK
taiga_1     |   Applying attachments.0004_auto_20150508_1141... OK
taiga_1     |   Applying attachments.0005_attachment_sha1... OK
taiga_1     |   Applying attachments.0006_auto_20160617_1233... OK
taiga_1     |   Applying attachments.0007_attachment_from_comment... OK
taiga_1     |   Applying attachments.0008_auto_20170201_1053... OK
taiga_1     |   Applying contenttypes.0002_remove_content_type_name... OK
taiga_1     |   Applying auth.0001_initial... OK
taiga_1     |   Applying auth.0002_alter_permission_name_max_length... OK
taiga_1     |   Applying auth.0003_alter_user_email_max_length... OK
taiga_1     |   Applying auth.0004_alter_user_username_opts... OK
taiga_1     |   Applying auth.0005_alter_user_last_login_null... OK
taiga_1     |   Applying auth.0006_require_contenttypes_0002... OK
taiga_1     |   Applying auth.0007_alter_validators_add_error_messages... OK
taiga_1     |   Applying auth.0008_alter_user_username_max_length... OK
taiga_1     |   Applying users.0003_auto_20140903_0925... OK
taiga_1     |   Applying users.0004_auto_20140913_1914... OK
taiga_1     |   Applying users.0005_alter_user_photo... OK
taiga_1     |   Applying users.0006_auto_20141030_1132... OK
taiga_1     |   Applying bitbucket.0001_initial... OK
taiga_1     |   Applying milestones.0001_initial... OK
taiga_1     |   Applying issues.0001_initial... OK
taiga_1     |   Applying userstories.0001_initial... OK
taiga_1     |   Applying userstories.0002_auto_20140903_1301... OK
taiga_1     |   Applying userstories.0003_userstory_order_fields... OK
taiga_1     |   Applying userstories.0004_auto_20141001_1817... OK
taiga_1     |   Applying userstories.0005_auto_20141009_1656... OK
taiga_1     |   Applying userstories.0006_auto_20141014_1524... OK
taiga_1     |   Applying userstories.0007_userstory_external_reference... OK
taiga_1     |   Applying userstories.0008_auto_20141210_1107... OK
taiga_1     |   Applying userstories.0009_remove_userstory_is_archived... OK
taiga_1     |   Applying projects.0003_auto_20140913_1710... OK
taiga_1     |   Applying projects.0004_auto_20141002_2337... OK
taiga_1     |   Applying projects.0005_membership_invitation_extra_text... OK
taiga_1     |   Applying notifications.0001_initial... OK
taiga_1     |   Applying history.0001_initial... OK
taiga_1     |   Applying history.0002_auto_20140916_0936... OK
taiga_1     |   Applying history.0003_auto_20140917_1405... OK
taiga_1     |   Applying history.0004_historyentry_is_hidden... OK
taiga_1     |   Applying notifications.0002_historychangenotification... OK
taiga_1     |   Applying notifications.0003_auto_20141029_1143... OK
taiga_1     |   Applying notifications.0004_watched... OK
taiga_1     |   Applying userstories.0010_remove_userstory_watchers... OK
taiga_1     |   Applying userstories.0011_userstory_tribe_gig... OK
taiga_1     |   Applying tasks.0001_initial... OK
taiga_1     |   Applying tasks.0002_tasks_order_fields... OK
taiga_1     |   Applying tasks.0003_task_external_reference... OK
taiga_1     |   Applying tasks.0004_auto_20141210_1107... OK
taiga_1     |   Applying tasks.0005_auto_20150114_0954... OK
taiga_1     |   Applying tasks.0006_auto_20150623_1923... OK
taiga_1     |   Applying tasks.0007_auto_20150629_1556... OK
taiga_1     |   Applying tasks.0008_remove_task_watchers... OK
taiga_1     |   Applying tasks.0009_auto_20151104_1131... OK
taiga_1     |   Applying users.0007_auto_20150209_1611... OK
taiga_1     |   Applying users.0008_auto_20150213_1701... OK
taiga_1     |   Applying users.0009_auto_20150326_1241... OK
taiga_1     |   Applying users.0010_auto_20150414_0936... OK
taiga_1     |   Applying timeline.0001_initial... OK
taiga_1     |   Applying projects.0006_auto_20141029_1040... OK
taiga_1     |   Applying projects.0007_auto_20141024_1011... OK
taiga_1     |   Applying projects.0008_auto_20141024_1012... OK
taiga_1     |   Applying projects.0009_auto_20141024_1037... OK
taiga_1     |   Applying projects.0010_project_modules_config... OK
taiga_1     |   Applying projects.0011_auto_20141028_2057... OK
taiga_1     |   Applying projects.0012_auto_20141210_1009... OK
taiga_1     |   Applying projects.0013_auto_20141210_1040... OK
taiga_1     |   Applying projects.0014_userstorystatus_is_archived... OK
taiga_1     |   Applying projects.0015_auto_20141230_1212... OK
taiga_1     |   Applying projects.0016_fix_json_field_not_null... OK
taiga_1     |   Applying projects.0017_fix_is_private_for_projects... OK
taiga_1     |   Applying projects.0018_auto_20150219_1606... OK
taiga_1     |   Applying projects.0019_auto_20150311_0821... OK
taiga_1     |   Applying timeline.0002_auto_20150327_1056... OK
taiga_1     |   Applying timeline.0003_auto_20150410_0829... OK
taiga_1     |   Applying timeline.0004_auto_20150603_1312... OK
taiga_1     |   Applying projects.0020_membership_user_order... OK
taiga_1     |   Applying projects.0021_auto_20150504_1524... OK
taiga_1     |   Applying projects.0022_auto_20150701_0924... OK
taiga_1     |   Applying projects.0023_auto_20150721_1511... OK
taiga_1     |   Applying projects.0024_auto_20150810_1247... OK
taiga_1     |   Applying projects.0025_auto_20150901_1600... OK
taiga_1     |   Applying projects.0026_auto_20150911_1237... OK
taiga_1     |   Applying projects.0027_auto_20150916_1302... OK
taiga_1     |   Applying projects.0028_project_is_featured... OK
taiga_1     |   Applying projects.0029_project_is_looking_for_people... OK
taiga_1     |   Applying likes.0001_initial... OK
taiga_1     |   Applying projects.0030_auto_20151128_0757... OK
taiga_1     |   Applying projects.0031_project_logo... OK
taiga_1     |   Applying projects.0032_auto_20151202_1151... OK
taiga_1     |   Applying projects.0033_text_search_indexes... OK
taiga_1     |   Applying projects.0034_project_looking_for_people_note... OK
taiga_1     |   Applying projects.0035_project_blocked_code... OK
taiga_1     |   Applying projects.0036_project_transfer_token... OK
taiga_1     |   Applying projects.0037_auto_20160208_1751... OK
taiga_1     |   Applying projects.0038_auto_20160215_1133... OK
taiga_1     |   Applying projects.0039_auto_20160322_1157... OK
taiga_1     |   Applying projects.0040_remove_memberships_of_cancelled_users_acounts... OK
taiga_1     |   Applying projects.0043_auto_20160530_1004... OK
taiga_1     |   Applying projects.0044_auto_20160531_1150... OK
taiga_1     |   Applying projects.0041_auto_20160519_1058... OK
taiga_1     |   Applying projects.0042_auto_20160525_0911... OK
taiga_1     |   Applying projects.0045_merge... OK
taiga_1     |   Applying issues.0002_issue_external_reference... OK
taiga_1     |   Applying issues.0003_auto_20141210_1108... OK
taiga_1     |   Applying issues.0004_auto_20150114_0954... OK
taiga_1     |   Applying issues.0005_auto_20150623_1923... OK
taiga_1     |   Applying issues.0006_remove_issue_watchers... OK
taiga_1     |   Applying projects.0046_triggers_to_update_tags_colors... OK
taiga_1     |   Applying projects.0047_auto_20160614_1201... OK
taiga_1     |   Applying projects.0048_auto_20160615_1508... OK
taiga_1     |   Applying projects.0049_auto_20160629_1443... OK
taiga_1     |   Applying projects.0050_project_epics_csv_uuid... OK
taiga_1     |   Applying projects.0051_auto_20160729_0802... OK
taiga_1     |   Applying projects.0052_epic_status... OK
taiga_1     |   Applying projects.0053_auto_20160927_0741... OK
taiga_1     |   Applying projects.0054_auto_20160928_0540... OK
taiga_1     |   Applying projects.0055_json_to_jsonb... OK
taiga_1     |   Applying projects.0056_auto_20161110_1518... OK
taiga_1     |   Applying contact.0001_initial... OK
taiga_1     |   Applying userstories.0012_auto_20160614_1201... OK
taiga_1     |   Applying wiki.0001_initial... OK
taiga_1     |   Applying wiki.0002_remove_wikipage_watchers... OK
taiga_1     |   Applying wiki.0003_auto_20160615_0721... OK
taiga_1     |   Applying users.0011_user_theme... OK
taiga_1     |   Applying users.0012_auto_20150812_1142... OK
taiga_1     |   Applying users.0013_auto_20150901_1600... OK
taiga_1     |   Applying users.0014_auto_20151005_1357... OK
taiga_1     |   Applying users.0015_auto_20160120_1409... OK
taiga_1     |   Applying users.0016_auto_20160204_1050... OK
taiga_1     |   Applying users.0017_auto_20160208_1751... OK
taiga_1     |   Applying users.0018_remove_vote_issues_in_roles_permissions_field... OK
taiga_1     |   Applying users.0019_auto_20160519_1058... OK
taiga_1     |   Applying users.0020_auto_20160525_1229... OK
taiga_1     |   Applying users.0021_auto_20160614_1201... OK
taiga_1     |   Applying users.0022_auto_20160629_1443... OK
taiga_1     |   Applying history.0005_auto_20141120_1119... OK
taiga_1     |   Applying history.0006_fix_json_field_not_null... OK
taiga_1     |   Applying history.0007_set_bloked_note_and_is_blocked_in_snapshots... OK
taiga_1     |   Applying history.0008_auto_20150508_1028... OK
taiga_1     |   Applying history.0009_auto_20160512_1110... OK
taiga_1     |   Applying history.0010_historyentry_project... OK
taiga_1     |   Applying history.0011_auto_20160629_1036... OK
taiga_1     |   Applying history.0012_auto_20160629_1036... OK
taiga_1     |   Applying epics.0001_initial... OK
taiga_1     |   Applying epics.0002_epic_color... OK
taiga_1     |   Applying custom_attributes.0001_initial... OK
taiga_1     |   Applying custom_attributes.0002_issuecustomattributesvalues_taskcustomattributesvalues_userstorycustomattributesvalues... OK
taiga_1     |   Applying custom_attributes.0003_triggers_on_delete_customattribute... OK
taiga_1     |   Applying custom_attributes.0004_create_empty_customattributesvalues_for_existen_object... OK
taiga_1     |   Applying custom_attributes.0005_auto_20150505_1639... OK
taiga_1     |   Applying custom_attributes.0006_auto_20151014_1645... OK
taiga_1     |   Applying custom_attributes.0007_auto_20160208_1751... OK
taiga_1     |   Applying custom_attributes.0008_auto_20160728_0540... OK
taiga_1     |   Applying custom_attributes.0009_auto_20160728_1002... OK
taiga_1     |   Applying custom_attributes.0010_auto_20160928_0540... OK
taiga_1     |   Applying custom_attributes.0011_json_to_jsonb... OK
taiga_1     |   Applying custom_attributes.0012_auto_20161201_1628... OK
taiga_1     |   Applying custom_attributes.0013_auto_20181022_1624... OK
taiga_1     |   Applying custom_attributes.0014_auto_20181025_0711... OK
taiga_1     |   Applying djmail.0001_initial... OK
taiga_1     |   Applying djmail.0002_auto_20161118_1347... OK
taiga_1     |   Applying easy_thumbnails.0001_initial... OK
taiga_1     |   Applying easy_thumbnails.0002_thumbnaildimensions... OK
taiga_1     |   Applying epics.0003_auto_20160901_1021... OK
taiga_1     |   Applying epics.0004_auto_20160928_0540... OK
taiga_1     |   Applying epics.0005_epic_external_reference... OK
taiga_1     |   Applying external_apps.0001_initial... OK
taiga_1     |   Applying external_apps.0002_remove_application_key... OK
taiga_1     |   Applying external_apps.0003_auto_20170607_2320... OK
taiga_1     |   Applying feedback.0001_initial... OK
taiga_1     |   Applying github.0001_initial... OK
taiga_1     |   Applying gitlab.0001_initial... OK
taiga_1     |   Applying gitlab.0002_auto_20150703_1102... OK
taiga_1     |   Applying gogs.0001_initial... OK
taiga_1     |   Applying history.0013_historyentry_values_diff_cache... OK
taiga_1     |   Applying history.0014_json_to_jsonb... OK
taiga_1     |   Applying issues.0007_auto_20160614_1201... OK
taiga_1     |   Applying issues.0008_add_due_date... OK
taiga_1     |   Applying likes.0002_auto_20151130_2230... OK
taiga_1     |   Applying milestones.0002_remove_milestone_watchers... OK
taiga_1     |   Applying notifications.0005_auto_20151005_1357... OK
taiga_1     |   Applying notifications.0006_auto_20151103_0954... OK
taiga_1     |   Applying notifications.0007_notifypolicy_live_notify_level... OK
taiga_1     |   Applying notifications.0008_auto_20181010_1124... OK
taiga_1     |   Applying projects.0057_auto_20161129_0945... OK
taiga_1     |   Applying projects.0058_auto_20161215_1347... OK
taiga_1     |   Applying projects.0059_auto_20170116_1633... OK
taiga_1     |   Applying projects.0060_auto_20180614_1338... OK
taiga_1     |   Applying projects.0061_auto_20180918_1355... OK
taiga_1     |   Applying references.0001_initial... OK
taiga_1     |   Applying sessions.0001_initial... OK
taiga_1     |   Applying settings.0001_initial... OK
taiga_1     |   Applying tasks.0010_auto_20160614_1201... OK
taiga_1     |   Applying tasks.0011_auto_20160928_0755... OK
taiga_1     |   Applying tasks.0012_add_due_date... OK
taiga_1     |   Applying timeline.0005_auto_20160706_0723... OK
taiga_1     |   Applying timeline.0006_json_to_jsonb... OK
taiga_1     |   Applying timeline.0007_auto_20170406_0615... OK
taiga_1     |   Applying timeline.0008_auto_20190606_1528... OK
taiga_1     |   Applying users.0023_json_to_jsonb... OK
taiga_1     |   Applying users.0024_auto_20170406_0727... OK
taiga_1     |   Applying users.0025_user_uuid... OK
taiga_1     |   Applying users.0026_auto_20180514_1513... OK
taiga_1     |   Applying users.0027_auto_20180610_2011... OK
taiga_1     |   Applying userstorage.0001_initial... OK
taiga_1     |   Applying userstorage.0002_fix_json_field_not_null... OK
taiga_1     |   Applying userstorage.0003_json_to_jsonb... OK
taiga_1     |   Applying userstories.0013_auto_20160722_1018... OK
taiga_1     |   Applying userstories.0014_auto_20160928_0540... OK
^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[B^[[Btaiga_1     |   Applying userstories.0015_add_due_date... OK
^[[B^[[B^[[B^[[B^[[B^[[Btaiga_1     |   Applying userstories.0016_userstory_assigned_users... OK
taiga_1     |   Applying userstories.0017_userstory_generated_from_task... OK
taiga_1     |   Applying votes.0001_initial... OK
taiga_1     |   Applying votes.0002_auto_20150805_1600... OK
taiga_1     |   Applying webhooks.0001_initial... OK
taiga_1     |   Applying webhooks.0002_webhook_name... OK
taiga_1     |   Applying webhooks.0003_auto_20150122_1021... OK
taiga_1     |   Applying webhooks.0004_auto_20150202_0834... OK
taiga_1     |   Applying webhooks.0005_auto_20150505_1639... OK
taiga_1     |   Applying webhooks.0006_json_to_jsonb... OK
taiga_1     |   Applying wiki.0004_auto_20160928_0540... OK
taiga_1     |   Applying wiki.0005_auto_20161201_1628... OK
taiga_1     | System check identified some issues:
taiga_1     |
taiga_1     | WARNINGS:
taiga_1     | ?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
taiga_1     | Trying import local.py settings...
taiga_1     | System check identified some issues:
taiga_1     |
taiga_1     | WARNINGS:
taiga_1     | ?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
taiga_1     | Installed 1 object(s) from 1 fixture(s)
taiga_1     | Trying import local.py settings...
taiga_1     | System check identified some issues:
taiga_1     |
taiga_1     | WARNINGS:
taiga_1     | ?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
taiga_1     | Installed 2 object(s) from 1 fixture(s)
taiga_1     | Trying import local.py settings...
taiga_1     | System check identified some issues:
taiga_1     |
taiga_1     | WARNINGS:
taiga_1     | ?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES dictionary takes precedence. You must put the values of the following settings into your default TEMPLATES dict: TEMPLATE_DEBUG.
taiga_1     | CommandError: No fixture named 'initial_role' found.
taiga_1     | Trying import local.py settings...
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/sv/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/ko/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/en/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/zh-Hant/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/he/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/zh-Hans/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/pt_BR/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/tr/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/it/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/ja/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/pl/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/ru/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/ca/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/nb/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/fi/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/fa/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/de/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/eu/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/es/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/fr/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/nl/LC_MESSAGES
taiga_1     | processing file django.po in /usr/src/taiga-back/taiga/locale/uk/LC_MESSAGES
taiga_1     | + nginx -t
taiga_1     | nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
taiga_1     | nginx: configuration file /etc/nginx/nginx.conf test is successful
taiga_1     | + chown taiga:taiga /usr/src/taiga-back/media
taiga_1     | + exec supervisord -c /etc/supervisord.conf
taiga_1     | 2019-11-11 17:11:33,630 INFO Set uid to user 0 succeeded
taiga_1     | 2019-11-11 17:11:33,642 INFO supervisord started with pid 1
taiga_1     | 2019-11-11 17:11:34,650 INFO spawned: 'nginx' with pid 161
taiga_1     | 2019-11-11 17:11:34,658 INFO spawned: 'backend' with pid 162
taiga_1     | 2019-11-11 17:11:35,397 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [162] [INFO] Starting gunicorn 19.7.1
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,401 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [162] [INFO] Listening at: http://127.0.0.1:8000 (162)
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,401 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [162] [INFO] Using worker: sync
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,414 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [169] [INFO] Booting worker with pid: 169
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,457 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [170] [INFO] Booting worker with pid: 170
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,530 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [172] [INFO] Booting worker with pid: 172
taiga_1     |
taiga_1     | 2019-11-11 17:11:35,573 DEBG 'backend' stderr output:
taiga_1     | [2019-11-11 17:11:35 +0000] [174] [INFO] Booting worker with pid: 174
taiga_1     |
taiga_1     | 2019-11-11 17:11:36,529 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     |
taiga_1     | 2019-11-11 17:11:36,530 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
taiga_1     | 2019-11-11 17:11:36,530 INFO success: backend entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
taiga_1     | 2019-11-11 17:11:36,532 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     |
taiga_1     | 2019-11-11 17:11:36,782 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...
taiga_1     |
taiga_1     | 2019-11-11 17:11:36,787 DEBG 'backend' stderr output:
taiga_1     | Trying import local.py settings...

Question: If I build the container using the following compose file there seems to be no official Taiga documentation for adding my own `contribPlugins` to taiga-frontend.

version: '3.7'

services:
  taiga:
#    image: quay.io/riotkit/taiga:4.2.7
    build:
      context: ./docker-taiga/
      #dockerfile: .
      args:
        - TAIGA_BACK_VERSION=4.2.13
        - TAIGA_FRONT_VERSION=4.2.13-stable
    networks:
      - traefik
      - default
    volumes:
      - ./media:/usr/src/taiga-back/media
    environment:
      TAIGA_SECRET_KEY: secret
      TAIGA_HOSTNAME: taiga.REDACTED
      TAIGA_SCHEME: https
      TAIGA_DB_NAME: taiga
      TAIGA_DB_USER: taiga
      TAIGA_DB_HOST: postgres
      TAIGA_DB_PASSWORD: dbpassword
      TAIGA_ENABLE_EMAIL: 'True'
      TAIGA_EMAIL_FROM: REDACTED
      TAIGA_EMAIL_USE_TLS: 'True'
      TAIGA_EMAIL_HOST: REDACTED
      TAIGA_EMAIL_PORT: 465
      TAIGA_EMAIL_USER: REDACTED
      TAIGA_EMAIL_PASS: REDACTED
    #deploy:
    labels:
      - "traefik.backend=taiga"
      - "traefik.docker.network=traefik"
      - "traefik.frontend.rule=Host:taiga.REDACTED"
      - "traefik.enable=true"
      - "traefik.port=80"

  postgres:
    image: postgres
    environment:
      POSTGRES_DB: taiga
      POSTGRES_USER: taiga
      POSTGRES_PASSWORD: dbpassword
    volumes:
      - ./postgres:/var/lib/postgresql/data
      
volumes:
  postgres:
  media:
    
networks:
  traefik:
    external: true

Any ideas as to how to get contribPlugins working?

Add support for docker secrets

Issue

Docker secrets aren't supported for Passwords.

Solution

It can be done similar as Postgres does it. Postgres allows 2 enviroment variables for reading password, POSTGRES_PASSWORD and POSTGRES_PASSWORD_FILE .

The _FILE makes it so postgres reads the password from a file rather than taking the literal string. This allows docker secrets which are usually mounted in /run/secrets/example inside the container to be read and used for authentication to the database.

Docker-Taiga could also introduce a enviroment variable named TAIGA_DB_PASSWORD_FILE which then reads the password from a file.

Notes

I can gladly provide how my docker-compose looks to show an example of secret use (or how I would use it)

Manage my database ?

i want to login my django for manage my database, and i already set on my .env file before im run the docker image,
when im open and fill username and password it said i was wrong

http://taigacompany/admin/login/?next=/admin/

and when im back check to docker-compose the directory /var/lib/postresql/data (but postresql directory dosen't exist)

or maybe i should check on container username and password after docker-compose
did anyone know where username and password for django on container is?

any clue?

Inviting/Adding user to project fails

When I'm trying to add new user to my project, I get the following error.

 taiga_1     | ERROR:2020-04-16 08:42:17,591: Internal Server Error: /api/v1/memberships/bulk_create
 taiga_1     | Traceback (most recent call last):
 taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 41, in inner
 taiga_1     |     response = get_response(request)
 taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response
 taiga_1     |     response = self._get_response(request)
 taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 187, in _get_response
 taiga_1     |     response = self.process_exception_by_middleware(e, request)
 taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 185, in _get_response
 taiga_1     |     response = wrapped_callback(request, *callback_args, **callback_kwargs)
 taiga_1     |   File "/usr/src/taiga-back/taiga/base/api/viewsets.py", line 106, in view
 taiga_1     |     return self.dispatch(request, *args, **kwargs)
 taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view
 taiga_1     |     return view_func(*args, **kwargs)
 taiga_1     |   File "/usr/src/taiga-back/taiga/base/api/views.py", line 460, in dispatch
 taiga_1     |     response = self.handle_exception(exc)
 taiga_1     |   File "/usr/src/taiga-back/taiga/base/api/views.py", line 458, in dispatch
 taiga_1     |     response = handler(request, *args, **kwargs)
 taiga_1     |   File "/usr/src/taiga-back/taiga/projects/api.py", line 1002, in bulk_create
 taiga_1     |     precall=self.pre_save)
 taiga_1     |   File "/usr/src/taiga-back/taiga/projects/services/members.py", line 65, in create_members_in_bulk
 taiga_1     |     db.save_in_bulk(members, callback, precall)
 taiga_1     |   File "/usr/local/lib/python3.6/contextlib.py", line 52, in inner
 taiga_1     |     return func(*args, **kwds)
 taiga_1     |   File "/usr/src/taiga-back/taiga/base/utils/db.py", line 99, in save_in_bulk
 taiga_1     |     callback(instance, created=created)
 taiga_1     |   File "/usr/src/taiga-back/taiga/projects/api.py", line 1078, in post_save
taiga_1     |     services.send_invitation(invitation=object)
taiga_1     |   File "/usr/src/taiga-back/taiga/projects/services/invitations.py", line 34, in send_invitation
taiga_1     |     email.send()
taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/mail/message.py", line 348, in send
taiga_1     |     return self.get_connection(fail_silently).send_messages([self])
taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/mail/backends/console.py", line 36, in send_messages
taiga_1     |     self.write_message(message)
taiga_1     |   File "/usr/local/lib/python3.6/site-packages/django/core/mail/backends/console.py", line 23, in write_message
taiga_1     |     self.stream.write('%s\n' % msg_data)
taiga_1     | UnicodeEncodeError: 'ascii' codec can't encode characters in position 10444-10446: ordinal not in range(128)

Tested with already existing user and tried with a dummy user.
Versions tested: 5.0.10 and 5.0.10-b1.3-RC1

.env file (System is currently a staging environment running on my machine):

# will not allow container to exit even if application exits
VERSION=5.0.10-b1.3-RC1
DEBUG=false

# http settings domain, scheme
TAIGA_HOSTNAME=10.211.55.9
TAIGA_SCHEME=http
TAIGA_PLUGINS=slack

# general
TAIGA_SECRET_KEY=:)
TAIGA_DEFAULT_LOCALE=en

# Database settings
# To use an external database, simply update these and remove the postgres
# service from this docker-compose.yml file
TAIGA_DB_NAME=taigadb
TAIGA_DB_HOST=postgres
TAIGA_DB_USER=postgres
TAIGA_DB_PASSWORD=:)

# To use an external SMTP for emails, fill in these values:
# TAIGA_ENABLE_EMAIL: True
# TAIGA_EMAIL_FROM: [email protected]
# TAIGA_EMAIL_USE_TLS: True
# TAIGA_EMAIL_HOST: smtp.google.com
# TAIGA_EMAIL_PORT: 587
# TAIGA_EMAIL_USER: [email protected]
# TAIGA_EMAIL_PASS: super-secure-pass phrase thing!

# events
TAIGA_ENABLE_EVENTS=false
TAIGA_EVENTS_HOST=events
TAIGA_BROKER_URL=amqp://guest:guest@rabbit:5672
TAIGA_REDIS_URL=redis://redis:6379/0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.