### Start Taiga Application Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Execute this script to launch the Taiga application. Ensure Docker and Docker Compose are installed and configured. ```sh ./launch-taiga.sh ``` -------------------------------- ### Configure Taiga Subdomain in Python Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example Python configuration for serving Taiga in a subdomain. This involves setting the scheme, domain, and ensuring FORCE_SCRIPT_NAME is empty. ```python TAIGA_SITES_SCHEME = "https" TAIGA_SITES_DOMAIN = "taiga.mycompany.com" FORCE_SCRIPT_NAME = "" ``` -------------------------------- ### Configure Taiga for HTTPS and Subpath Access Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example configuration for serving Taiga securely via HTTPS on a subpath. ```bash TAIGA_SCHEME=https TAIGA_DOMAIN=mycompany.com SUBPATH="/taiga" WEBSOCKETS_SCHEME=wss ``` -------------------------------- ### Configure Taiga for HTTPS and Subdomain Access Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example configuration for serving Taiga securely via HTTPS on a subdomain. ```bash TAIGA_SCHEME=https TAIGA_DOMAIN=taiga.mycompany.com SUBPATH="" WEBSOCKETS_SCHEME=wss ``` -------------------------------- ### Configure Taiga Subpath in Python Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example Python configuration for serving Taiga in a subpath. This involves setting the scheme, domain, and specifying the subpath in FORCE_SCRIPT_NAME. ```python TAIGA_SITES_SCHEME = "https" TAIGA_SITES_DOMAIN = "taiga.mycompany.com" FORCE_SCRIPT_NAME = "/taiga" ``` -------------------------------- ### Launch Taiga Services Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Command to start all Taiga services in detached mode after configuration is complete. ```bash $ docker compose up -d ``` -------------------------------- ### Configure Taiga Environment Variables (.env file) Source: https://context7.com/taigaio/taiga-docker/llms.txt This example shows a comprehensive .env file for a production HTTPS subdomain deployment. Key settings include URLs, security credentials, database, email (SMTP), RabbitMQ, attachments, and telemetry. ```bash # .env — complete example for a production HTTPS subdomain deployment # URLs TAIGA_SCHEME=https TAIGA_DOMAIN=taiga.mycompany.com SUBPATH="" WEBSOCKETS_SCHEME=wss # Security SECRET_KEY="a-very-long-random-unpredictable-string-change-me" # Database POSTGRES_USER=taiga POSTGRES_PASSWORD=strongpassword123 # Email (SMTP) EMAIL_BACKEND=smtp EMAIL_HOST=smtp.sendgrid.net EMAIL_PORT=587 EMAIL_HOST_USER=apikey EMAIL_HOST_PASSWORD=SG.xxxxxxxxxxxxxxxxxxxx EMAIL_DEFAULT_FROM=no-reply@mycompany.com EMAIL_USE_TLS=True EMAIL_USE_SSL=False # RabbitMQ RABBITMQ_USER=taiga RABBITMQ_PASS=rabbitpassword RABBITMQ_VHOST=taiga RABBITMQ_ERLANG_COOKIE=unique-erlang-cookie-value # Attachments ATTACHMENTS_MAX_AGE=360 # Telemetry (opt out by setting to False) ENABLE_TELEMETRY=True ``` -------------------------------- ### Launch Full Taiga Stack with Docker Compose Source: https://context7.com/taigaio/taiga-docker/llms.txt Use this script to clone the repository and start all Taiga services in detached mode. Ensure you review and edit the .env file before the first launch, particularly SECRET_KEY, POSTGRES_PASSWORD, and TAIGA_DOMAIN. ```bash # Clone the repository and start all services git clone https://github.com/taigaio/taiga-docker.git cd taiga-docker # Review and edit the .env file before first launch # At minimum, change SECRET_KEY, POSTGRES_PASSWORD, and TAIGA_DOMAIN ./launch-taiga.sh # Verify all services are running docker compose ps # Access Taiga at http://localhost:9000 ``` -------------------------------- ### Run Database Migrations with Docker Compose Inits Source: https://context7.com/taigaio/taiga-docker/llms.txt This command uses docker-compose-inits.yml to run Django management commands like 'migrate' against the live database. It's useful for initial setup or upgrades. The 'run --rm' flags ensure the container is removed after execution. ```bash # Run migrations (used during upgrades or first setup) docker compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage migrate # Load initial fixture data docker compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage loaddata initial_user # Create superuser non-interactively using environment variables DJANGO_SUPERUSER_PASSWORD=mypassword \ docker compose -f docker-compose.yml -f docker-compose-inits.yml run --rm \ -e DJANGO_SUPERUSER_USERNAME=admin \ -e DJANGO_SUPERUSER_EMAIL=admin@mycompany.com \ taiga-manage createsuperuser --noinput ``` -------------------------------- ### Configure Taiga Subdomain in JSON Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example JSON configuration for serving Taiga in a subdomain. This sets the API endpoint, WebSocket URL, and base href for the frontend. ```json { "api": "https://taiga.mycompany.com/api/v1/", "eventsUrl": "wss://taiga.mycompany.com/events", "baseHref": "/", ``` -------------------------------- ### Rename Trello Configuration File Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Before editing the Trello configuration file, rename the example file to the active configuration file using the 'mv' command. ```bash mv settings/config.py.prod.example settings/config.py ``` -------------------------------- ### Configure Taiga Subpath in JSON Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Example JSON configuration for serving Taiga in a subpath. This sets the API endpoint, WebSocket URL, and base href, including the subpath. ```json { "api": "https://mycompany.com/taiga/api/v1/", "eventsUrl": "wss://mycompany.com/taiga/events", "baseHref": "/taiga/", ``` -------------------------------- ### Configure Nginx Reverse Proxy Source: https://context7.com/taigaio/taiga-docker/llms.txt Example Nginx configuration for proxying external traffic to the internal Taiga gateway on port 9000. ```nginx # When deploying Taiga behind an existing Nginx server, proxy all traffic to the internal gateway on port 9000. ``` -------------------------------- ### Create Taiga Admin User Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Use this command to create a superuser for your Taiga instance after starting the services. It runs the 'createsuperuser' management command within a temporary container. ```bash $ docker compose up -d $ docker compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage createsuperuser ``` -------------------------------- ### Create Taiga Superuser Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Run this script after starting the application to create an administrator account. This script executes Django's createsuperuser command within the Taiga backend container. ```sh ./taiga-manage.sh createsuperuser ``` -------------------------------- ### Nginx Configuration for Subdomain Deployment Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure Nginx to serve Taiga on a subdomain. This setup includes proxying requests for the main application and WebSocket events. ```nginx server { server_name taiga.mycompany.com; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect off; proxy_pass http://localhost:9000/; } # WebSocket events endpoint location /events { proxy_pass http://localhost:9000/events; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_connect_timeout 7d; proxy_send_timeout 7d; proxy_read_timeout 7d; } listen 443 ssl; # TLS certificate configuration here } ``` -------------------------------- ### Rename Trello Frontend Configuration File Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Before editing the Trello frontend configuration file, rename the example JSON file to the active configuration file using the 'mv' command. ```bash mv dist/conf.example.json dist/conf.json ``` -------------------------------- ### Nginx Configuration for Subpath Deployment Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure Nginx to serve Taiga under a specific subpath (e.g., /taiga/). This setup handles both the main application and WebSocket events within the subpath. ```nginx server { server_name mycompany.com; location /taiga/ { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect off; proxy_pass http://localhost:9000/; } location /taiga/events { proxy_pass http://localhost:9000/events; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_connect_timeout 7d; proxy_send_timeout 7d; proxy_read_timeout 7d; } } ``` -------------------------------- ### Enable Slack Integration Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for both the backend and frontend services to enable Slack integration. ```yaml # In docker-compose.yml — add to &default-back-environment x-environment: &default-back-environment ENABLE_SLACK: "True" # In the taiga-front service services: taiga-front: environment: ENABLE_SLACK: "true" ``` -------------------------------- ### Configure PostgreSQL User and Password Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set the user and password for connecting to the PostgreSQL database. ```bash POSTGRES_USER=taiga POSTGRES_PASSWORD=taiga ``` -------------------------------- ### Configure Taiga Instance URLs and Protocols Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Define the scheme, domain, subpath, and WebSocket protocol for accessing the Taiga instance. ```bash TAIGA_SCHEME=http TAIGA_DOMAIN=localhost:9000 SUBPATH="" WEBSOCKETS_SCHEME=ws ``` -------------------------------- ### Enable Jira Importer Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for the backend and frontend to enable the Jira project importer. Requires Jira consumer key and certificates. ```yaml # Jira Importer — add to &default-back-environment and taiga-front x-environment: &default-back-environment ENABLE_JIRA_IMPORTER: "True" JIRA_IMPORTER_CONSUMER_KEY: "consumer-key-from-jira" JIRA_IMPORTER_CERT: "-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----" JIRA_IMPORTER_PUB_CERT: "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----" services: taiga-front: environment: ENABLE_JIRA_IMPORTER: "true" ``` -------------------------------- ### Enable Trello Importer Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for the backend and frontend to enable the Trello project importer. Requires Trello API key and secret key. ```yaml # Trello Importer — add to &default-back-environment and taiga-front x-environment: &default-back-environment ENABLE_TRELLO_IMPORTER: "True" TRELLO_IMPORTER_API_KEY: "api-key-from-trello" TRELLO_IMPORTER_SECRET_KEY: "secret-key-from-trello" services: taiga-front: environment: ENABLE_TRELLO_IMPORTER: "true" ``` -------------------------------- ### Enable GitHub Importer Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for the backend and frontend to enable the GitHub project importer. Requires GitHub OAuth app credentials. ```yaml # GitHub Importer — add to &default-back-environment and taiga-front x-environment: &default-back-environment ENABLE_GITHUB_IMPORTER: "True" GITHUB_IMPORTER_CLIENT_ID: "github-oauth-app-client-id" GITHUB_IMPORTER_CLIENT_SECRET: "github-oauth-app-client-secret" services: taiga-front: environment: ENABLE_GITHUB_IMPORTER: "true" ``` -------------------------------- ### Configure RabbitMQ Connection Details Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set the user, password, virtual host, and Erlang cookie for connecting to RabbitMQ services. ```bash RABBITMQ_USER=taiga RABBITMQ_PASS=taiga RABBITMQ_VHOST=taiga RABBITMQ_ERLANG_COOKIE=secret-erlang-cookie ``` -------------------------------- ### Enable GitLab OAuth Login Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for both the backend and frontend services to enable GitLab OAuth authentication. Ensure public registration and GitLab URL are set. ```yaml x-environment: &default-back-environment ENABLE_GITLAB_AUTH: "True" GITLAB_API_CLIENT_ID: "your-gitlab-application-id" GITLAB_API_CLIENT_SECRET: "your-gitlab-secret" GITLAB_URL: "https://gitlab.com" PUBLIC_REGISTER_ENABLED: "True" # In the taiga-front service services: taiga-front: environment: ENABLE_GITLAB_AUTH: "true" GITLAB_CLIENT_ID: "your-gitlab-application-id" # same as GITLAB_API_CLIENT_ID GITLAB_URL: "https://gitlab.com" # same as backend GITLAB_URL PUBLIC_REGISTER_ENABLED: "true" ``` -------------------------------- ### Configure Console Email Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set the email backend to 'console' to display emails in standard output. This is the default setting. ```bash EMAIL_BACKEND=console ``` -------------------------------- ### Enable GitHub OAuth Login Source: https://context7.com/taigaio/taiga-docker/llms.txt Configure environment variables for both the backend and frontend services to enable GitHub OAuth authentication. Ensure public registration is also enabled. ```yaml x-environment: &default-back-environment ENABLE_GITHUB_AUTH: "True" GITHUB_API_CLIENT_ID: "your-github-oauth-app-client-id" GITHUB_API_CLIENT_SECRET: "your-github-oauth-app-client-secret" PUBLIC_REGISTER_ENABLED: "True" # In the taiga-front service services: taiga-front: environment: ENABLE_GITHUB_AUTH: "true" GITHUB_CLIENT_ID: "your-github-oauth-app-client-id" # same value as GITHUB_API_CLIENT_ID PUBLIC_REGISTER_ENABLED: "true" ``` -------------------------------- ### Configure Jira Importer in Taiga Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable the Jira importer feature and provide the consumer key and certificate details obtained from Jira for the backend configuration. Note the case sensitivity: 'True' for backend. ```yaml ENABLE_JIRA_IMPORTER: "True" JIRA_IMPORTER_CONSUMER_KEY: "consumer-key-from-jira" JIRA_IMPORTER_CERT: "cert-from-jira" JIRA_IMPORTER_PUB_CERT: "pub-cert-from-jira" ``` -------------------------------- ### Enable Slack Integration in Taiga Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set this environment variable in the backend configuration to enable Slack integration. Note the case sensitivity: 'True' for backend. ```yaml ENABLE_SLACK: "True" ``` -------------------------------- ### Enable Slack Integration in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set this environment variable in the frontend configuration to enable Slack integration. Note the case sensitivity: 'true' for frontend. ```yaml ENABLE_SLACK: "true" ``` -------------------------------- ### Enable Public Registration in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set this environment variable in the frontend configuration to enable public registration. Note the case sensitivity: 'true' for frontend. ```yaml PUBLIC_REGISTER_ENABLED: "true" ``` -------------------------------- ### Configure GitHub Importer in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable the GitHub importer feature for the frontend configuration. Note the case sensitivity: 'true' for frontend. ```yaml ENABLE_GITHUB_IMPORTER: "true" ``` -------------------------------- ### Customize Taiga Backend Configuration Source: https://context7.com/taigaio/taiga-docker/llms.txt Download and modify the production configuration file for the Taiga backend. Map the customized file into the container using Docker volumes. ```sh # Backend: download and customize config.py curl -o config.py https://raw.githubusercontent.com/taigaio/taiga-back/main/settings/config.py.prod.example # Edit config.py — key settings: # TAIGA_SITES_SCHEME = "https" # TAIGA_SITES_DOMAIN = "taiga.mycompany.com" # FORCE_SCRIPT_NAME = "" # use "" for subdomain, "/taiga" for subpath ``` ```yaml # In docker-compose.yml — uncomment and update the volume mapping x-volumes: &default-back-volumes - taiga-static-data:/taiga-back/static - taiga-media-data:/taiga-back/media - ./config.py:/taiga-back/settings/config.py # <-- uncomment this line # Also map in docker-compose-inits.yml (same x-volumes section) ``` -------------------------------- ### Configure GitHub Importer in Taiga Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable the GitHub importer feature and provide the client ID and secret obtained from GitHub for the backend configuration. Note the case sensitivity: 'True' for backend. ```yaml ENABLE_GITHUB_IMPORTER: "True" GITHUB_IMPORTER_CLIENT_ID: "client-id-from-github" GITHUB_IMPORTER_CLIENT_SECRET: "client-secret-from-github" ``` -------------------------------- ### Create Taiga Admin Superuser Source: https://context7.com/taigaio/taiga-docker/llms.txt Use the taiga-manage.sh script to create an initial superuser account interactively after the stack is running. This script wraps Django's manage.py and executes it within the taiga-manage container. ```bash # Start the stack first (services must be running) docker compose up -d # Run createsuperuser interactively ./taiga-manage.sh createsuperuser # Prompts: # Username: admin # Email: admin@mycompany.com # Password: ************ # Password (again): ************ # Superuser created successfully. # Other useful manage.py commands ./taiga-manage.sh migrate # apply database migrations ./taiga-manage.sh collectstatic # gather static files ./taiga-manage.sh shell # open Django shell ``` -------------------------------- ### Customize Taiga Frontend Configuration Source: https://context7.com/taigaio/taiga-docker/llms.txt Download and modify the configuration file for the Taiga frontend. Map the customized file into the container using Docker volumes, adjusting `baseHref` for subpath deployments. ```sh # Frontend: download and customize conf.json curl -o conf.json https://raw.githubusercontent.com/taigaio/taiga-front/main/dist/conf.example.json # conf.json for subdomain deployment: cat > conf.json << 'EOF' { "api": "https://taiga.mycompany.com/api/v1/", "eventsUrl": "wss://taiga.mycompany.com/events", "baseHref": "/" } EOF ``` ```yaml # In docker-compose.yml — uncomment the volume mapping in taiga-front service services: taiga-front: volumes: - ./conf.json:/usr/share/nginx/html/conf.json # <-- uncomment this line ``` -------------------------------- ### Configure GitLab OAuth in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable GitLab authentication and provide client ID and URL for the frontend. Ensure PUBLIC_REGISTER_ENABLED is also set to 'true'. ```yaml ENABLE_GITLAB_AUTH: "true" GITLAB_CLIENT_ID: "gitlab-client-id" GITLAB_URL: "gitlab-url" PUBLIC_REGISTER_ENABLED: "true" ``` -------------------------------- ### Configure GitHub OAuth in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable GitHub authentication and provide client ID for the frontend. Ensure PUBLIC_REGISTER_ENABLED is also set to 'true'. ```yaml ENABLE_GITHUB_AUTH: "true" GITHUB_CLIENT_ID: "github-client-id" PUBLIC_REGISTER_ENABLED: "true" ``` -------------------------------- ### Configure GitLab OAuth in Taiga Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable GitLab authentication and provide client ID, secret, and URL for the backend. Ensure PUBLIC_REGISTER_ENABLED is also set to 'True'. ```yaml ENABLE_GITLAB_AUTH: "True" GITLAB_API_CLIENT_ID: "gitlab-client-id" GITLAB_API_CLIENT_SECRET: "gitlab-client-secret" GITLAB_URL: "gitlab-url" PUBLIC_REGISTER_ENABLED: "True" ``` -------------------------------- ### Enable Trello Importer in Backend Environment Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set these environment variables in your docker-compose.yml or docker-compose-inits.yml to enable the Trello importer feature for the backend services. Ensure correct casing for boolean values. ```yaml ENABLE_TRELLO_IMPORTER: "True" TRELLO_IMPORTER_API_KEY: "api-key-from-trello" TRELLO_IMPORTER_SECRET_KEY: "secret-key-from-trello" ``` -------------------------------- ### Configure Taiga Front Environment Variables Source: https://context7.com/taigaio/taiga-docker/llms.txt Set environment variables for the taiga-front service to customize its behavior, such as enabling public registration. ```yaml services: taiga-front: image: taigaio/taiga-front:latest environment: TAIGA_URL: "${TAIGA_SCHEME}://${TAIGA_DOMAIN}" TAIGA_WEBSOCKETS_URL: "${WEBSOCKETS_SCHEME}://${TAIGA_DOMAIN}" TAIGA_SUBPATH: "${SUBPATH}" PUBLIC_REGISTER_ENABLED: "true" # Note: lowercase "t" for frontend ``` -------------------------------- ### Configure GitHub OAuth in Taiga Backend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable GitHub authentication and provide client ID and secret for the backend. Ensure PUBLIC_REGISTER_ENABLED is also set to 'True'. ```yaml ENABLE_GITHUB_AUTH: "True" GITHUB_API_CLIENT_ID: "github-client-id" GITHUB_API_CLIENT_SECRET: "github-client-secret" PUBLIC_REGISTER_ENABLED: "True" ``` -------------------------------- ### Configure Jira Importer in Taiga Frontend Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable the Jira importer feature for the frontend configuration. Note the case sensitivity: 'true' for frontend. ```yaml ENABLE_JIRA_IMPORTER: "true" ``` -------------------------------- ### Configure SMTP Email Settings Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Configure Taiga to use an SMTP server for sending emails, including server address, port, credentials, and sender address. ```bash EMAIL_BACKEND=smtp EMAIL_HOST=smtp.host.example.com EMAIL_PORT=587 EMAIL_HOST_USER=user EMAIL_HOST_PASSWORD=password EMAIL_DEFAULT_FROM=changeme@example.com ``` -------------------------------- ### Enable Trello Importer in Frontend Environment Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set this environment variable in your taiga-front service configuration to enable the Trello importer feature for the frontend. Note the lowercase 'true' for the frontend. ```yaml ENABLE_TRELLO_IMPORTER: "true" ``` -------------------------------- ### Configure TLS/SSL for SMTP Connection Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Specify whether to use TLS or SSL for a secure connection to the SMTP server. Only one should be set to True. ```bash EMAIL_USE_TLS=True EMAIL_USE_SSL=False ``` -------------------------------- ### Enable Public Registration in Taiga Backend Source: https://context7.com/taigaio/taiga-docker/llms.txt To enable public registration, set the PUBLIC_REGISTER_ENABLED environment variable to 'True' within the backend service's environment block in docker-compose.yml. Note the capital 'T' for the boolean value. ```yaml # In docker-compose.yml — add to the &default-back-environment block x-environment: &default-back-environment # ... existing vars ... PUBLIC_REGISTER_ENABLED: "True" # Note: capital "T" for backend ``` -------------------------------- ### Enable Telemetry Data Collection Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Enable or disable the collection of anonymous telemetry data for platform improvement. Defaults to True. ```bash ENABLE_TELEMETRY=True ``` -------------------------------- ### Execute Taiga Management Commands Source: https://github.com/taigaio/taiga-docker/blob/main/README.md This script allows you to run arbitrary Django management commands on the Taiga backend instance. Replace [COMMAND] with the desired command. ```sh ./taiga-manage.sh [COMMAND] ``` -------------------------------- ### Nginx Proxy Configuration for Taiga Subdomain Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Use this Nginx configuration when Taiga is served on a subdomain (e.g., taiga.mycompany.com). It sets up proxy headers and handles the main application and event streams. ```nginx server { server_name taiga.mycompany.com; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect off; proxy_pass http://localhost:9000/; } # Events location /events { proxy_pass http://localhost:9000/events; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_connect_timeout 7d; proxy_send_timeout 7d; proxy_read_timeout 7d; } # TLS: Configure your TLS following the best practices inside your company # Logs and other configurations } ``` -------------------------------- ### Set Taiga Secret Key Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set a unique and unpredictable secret key for cryptographic signing in Taiga. ```bash SECRET_KEY="taiga-secret-key" ``` -------------------------------- ### Nginx Proxy Configuration for Taiga Subpath Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Adapt this Nginx configuration when Taiga is served within a subpath of a domain (e.g., mycompany.com/taiga/). It includes specific location blocks for the main application and event streams, adjusting paths accordingly. ```nginx server { server_name mycompany.com; location /taiga/ { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect off; proxy_pass http://localhost:9000/; } # Events location /taiga/events { proxy_pass http://localhost:9000/events; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_connect_timeout 7d; proxy_send_timeout 7d; proxy_read_timeout 7d; } # TLS: Configure your TLS following the best practices inside your company # Logs and other configurations } ``` -------------------------------- ### Configure Attachment Token Expiration Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Set the expiration time in seconds for attachment access tokens. ```bash ATTACHMENTS_MAX_AGE=360 ``` -------------------------------- ### Configure Session and CSRF Cookies for HTTP Source: https://github.com/taigaio/taiga-docker/blob/main/README.md Disable secure flags for session and CSRF cookies when running Taiga behind HTTP, necessary for Django Admin access. ```yaml SESSION_COOKIE_SECURE: "False" CSRF_COOKIE_SECURE: "False" ``` -------------------------------- ### Internal Nginx Gateway Routing Configuration Source: https://context7.com/taigaio/taiga-docker/llms.txt Internal Nginx gateway configuration for routing traffic between Docker services. This handles the frontend, API, admin, static files, protected media, and WebSocket events. ```nginx # taiga-gateway/taiga.conf — internal routing summary server { listen 80 default_server; client_max_body_size 100M; charset utf-8; location / { proxy_pass http://taiga-front/; } # Angular SPA location /api/ { proxy_pass http://taiga-back:8000/api/; } # REST API location /admin/ { proxy_pass http://taiga-back:8000/admin/; } # Django Admin location /static/ { alias /taiga/static/; } # Static assets location /media/ { proxy_pass http://taiga-protected:8003/; } # Protected media location /media/exports/ { alias /taiga/media/exports/; } # Public exports location /events { proxy_pass http://taiga-events:8888/events; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_connect_timeout 7d; } } ``` -------------------------------- ### Disable Secure Cookie Flags for HTTP Access Source: https://context7.com/taigaio/taiga-docker/llms.txt When running Taiga over plain HTTP, disable secure cookie flags for Django Admin sessions and CSRF tokens. Add these to the `x-environment` section in `docker-compose.yml`. ```yaml x-environment: &default-back-environment SESSION_COOKIE_SECURE: "False" CSRF_COOKIE_SECURE: "False" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.