* Update readme on internationalization
* Run compilemessages when building production image
* Run compilemessages when deploying to Heroku
* Always keep Heroku post-compile hooks
* Add empty po file for en-US language
* Update instructions for Docker
* Update default po file
* Convert locale readme to markdown and expand a bit the instructions
* Don't compile translations for 3rd party packages
* Use simplified settings & set env variables for compiling translations
* Update README for translations
* Improve metadata for Brazilian Portuguese translations
* Fix condition for django compressor on Heroku
* Fix condition for Django Compressor
* Bump node in /{{cookiecutter.project_slug}}/compose/local/node
Bumps node from 16-bullseye-slim to 18-bullseye-slim.
---
updated-dependencies:
- dependency-name: node
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update to node 18 in prod Dockerfile
* Update to node 18 in package.json
* Update node version in CI
* Update node version in documentation
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
* Add more hooks from pre-commit-hooks repo
* Add pre-commit hook for prettier
* Format with prettier
* Remove check-docstring-first hook
* Run prettier in the template
* Tweak formatting of dependabot file
* Fix formatting of GitHub files for prettier
* More format fixes of ci.yml
* Upgrade Python to version 3.11 (Faster CPython)
* Update pyupgrade config for Python 3.11
* Update tox env to Python 3.11
* Update to latest Python 3.11.3
* Add a note about lack of support in PythonAnywhere
* Rephrase note
* Fix casing
---------
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Add option to serve media files locally using nginx
* Fix nginx media location and storage issue
* Fix traefik django-media typo
* Add certresolver property to web-media-router
* Add trailing slash in nginx configuration to avoid path traversal exploits
* Remove autoindexing from nginx configuration so nginx uses its default off setting
* Use nginx to serve media files if cloud provider is None
* Add back warning about lack of media files without Docker or Cloud providers
* Update documentation
* Fix typos and rephrase
Co-authored-by: Arkadiusz Ryś <arkadiusz.michal.rys@gmail.com>
* Change Traefik media router rule generation to force priority
The web-secure-router could end up having priority over the web-media-router when the www subdomain was used.
This fix adds the www subdomain to the web-media-router if it's also present in the web-secure-router rule.
Traefik looks at the length of rules to determine priority when no explicit priority is set.
The web-media-router needs to always have priority over the web-secure-router in order for the media files to be served.
* Add space to Traefik rule
---------
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Pin base Python Docker images to bugfix
Fix#1810
* Skip major & minor versions of Docker images in Dependabot
* Remove argument for docs Docker image
* Update Dependabot config of generated project
* Add option to serve media files locally using nginx
* Fix nginx media location and storage issue
* Fix traefik django-media typo
* Add certresolver property to web-media-router
* Add trailing slash in nginx configuration to avoid path traversal exploits
* Remove autoindexing from nginx configuration so nginx uses its default off setting
* Use nginx to serve media files if cloud provider is None
* Add back warning about lack of media files without Docker or Cloud providers
* Update documentation
* Fix typos and rephrase
Co-authored-by: Arkadiusz Ryś <arkadiusz.michal.rys@gmail.com>
---------
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Add support for Webpack as frontend pipeline
* Rename CI jobs
* Fix a couple of issues with Webpack + Docker
* Don't include Boostrap CSS from CDN with Webpack
* Rename variable
* Set publicPath in prod webpack config
* Fix removal of SASS files in post-gen hooks
* Add Webpack to readme usage section
* Run Django + Webpack dev server concurrently without Docker
* Fix async runserver command with Gulp/Webpack
* Upgrade django-webpack-loader to 1.5.0
* Pass variables required by Webpack at build time
* Upgrade django-webpack-loader to 1.7.0
* Add missing condition
* Add support for Azure Storage + Webpack
* Whitespaces
* Rename ROOT_DIR -> BASE_DIR
* Rename jobs
* Bump django-webpack-loader to latest
* Document limitation of Docker + Webpack + no Whitenoise
* Update section on custom Bootstrap compilation in generated readme
They are now the default and cause a warning:
WARNING: --use-feature=2020-resolver no longer has any effect, since it is now the default dependency resolver in pip. This will become an error in pip 21.0.
If the domain_name entered contains subdomains, e.g. `api.example.com`
then do *not* add an additional `www.api.example.com` route to traefik
If the user enters only the domain `example.com` then add the optional
`www.example.com` Host to the traefik routers.
Using system Python 3 distribution (3.7.3) in order to allow the use of Debian packages for numpy, scipy, etc. without the need of building them or installing build dependencies.
Changed `#!/bin/sh` in shell scripts to `#!/bin/bash` to make `set -o pipefail` work.
- Change celery app to not be a Django app, more like a WSGI app
- Define a Celery task in the Django users app
- Write a test to execute the task
- Update scripts to use the new app to start workers
- Update documentation
Fix#865
## Description
Following up on @webyneter attempt in #1205, which is now getting outdated, I've tried to make Gulp task runner work with Docker. There is no documentation yet, but this seems to work locally with the custom bootstrap compilation...
- [x] Add a node image for local developement
- [x] Proxy the django image rather than localhost in Browser sync, pass header to keep hostname
- [x] Don't call the runserver command from Gulp, let docker-compose handle
- [x] Update package.json & gulpfile.js templates to reduce the number of unwanted empty lines
- [x] Use [multi-stage build](https://docs.docker.com/develop/develop-images/multistage-build/) in production to make sure the static assets are produced
- [x] Update documentation
- [x] Verify that the previous issue with static assets missing from production isn't there
## Rationale
Currently, the static build isn't working nicely with Docker, extra manual setup is required.
Fixes#1762
## Description
Replace Caddy with Traefik
## Rationale
There is some trouble with the Caddy license (https://github.com/pydanny/cookiecutter-django/pull/1282#issuecomment-329617536)
@drdaeman suggested using Traefik (https://github.com/pydanny/cookiecutter-django/pull/1282#issuecomment-353655273) which supports ACME and also plays very nice with Docker.
## Comments
I am currently using the proposed setup on a live site and it working great so far. If this PR is of interest to the maintainers, then I could commit more changes and take care of the documentation. Of course, any suggestions by the more experienced people around here, are welcome!
* Integrate Flower with Docker Compose setup locally
* Remove alien worker celeryd option
* Move Flower COPY section below the worker's
* Remove set -o pipefail command from Flower start script
* Flower client authentication
* Override flower service image name
* Move flower service to the end of local.yml
* Install flower==0.9.2 in all environments
* Introduce production flower service
* Fix local flower start script
* Document Flower integration
* Prettify *.django envs
Rationale: consistency.
* Reference local environment Flower docs from the production's
* 'two more services' -> 'three more services'
Removed the openssl-dev package from the Django Dockerfiles (local and production) to fix the unsatisfiable constraints error.
The error appears because you can't have openssl and libressl installed at the same time. One of the package used by the template/project installs libressl which create an error when trying to install openssl.
Thx to @browniebroke