Commit Graph

111 Commits

Author SHA1 Message Date
Demetris Stavrou
2c56b2e0e3 Added CELERY_BROKER_URL back to entrypoint and surrounded it with a conditional 2018-06-28 00:30:23 +03:00
Demetris Stavrou
7c69704f9f Moved CELERY_BROKER_URL definition to .django env file to resolve error when Celery is not used (PR #1693) 2018-06-28 00:30:23 +03:00
Nikita Shupeyko
275c13292c
Integrate Flower with Docker Compose setup (#1655)
* 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'
2018-06-27 19:33:21 +03:00
Nikita P. Shupeyko
d8526d1b2d Unset -o xtrace in compose start scripts 2018-06-05 12:28:11 +03:00
Nikita P. Shupeyko
b8c7ae8b4b Remove set -o pipefail command from celerybeat start script 2018-05-28 12:50:57 +03:00
Nikita P. Shupeyko
e08b6ab6f8 Remove set -o pipefail command from celeryworker start script 2018-05-28 12:50:54 +03:00
Nikita P. Shupeyko
77f61de236 chown django /start-(celerybeat|celeryworker) in production Django 2018-05-25 12:55:27 +03:00
Michel Sassano
c3b9f72f31 Remove openssl to fix unsatisfiable constraints error with libressl (#1661)
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
2018-05-25 14:21:22 +08:00
Nikita P. Shupeyko
39c825a262 Fix latest Caddy version 2018-05-21 22:36:50 +03:00
Nikita P. Shupeyko
6cefe2b9dc Rename gunicorn script to start 2018-05-21 22:28:18 +03:00
Nikita P. Shupeyko
4a1ea2fb45 Commit local django start scripts back 2018-05-21 15:39:12 +03:00
Nikita P. Shupeyko
cfff5b9d08 Commit local django celery start scripts back 2018-05-21 15:34:28 +03:00
Nikita P. Shupeyko
849f64e1a5 Remove .sh ext from executable scripts 2018-05-21 15:20:11 +03:00
Nikita P. Shupeyko
90953a83f2 Alter django entrypoint.sh output 2018-05-21 15:03:37 +03:00
Nikita P. Shupeyko
9b938647b4 Refactor exec "$@" in django entrypoint.sh 2018-05-21 14:59:26 +03:00
Nikita Shupeyko
820e3540da
Upgrade Caddy to 0.11 and pin its version to minor rather than patch (#1653) 2018-05-21 12:44:38 +03:00
Nikita P. Shupeyko
091a3b6d0f gunicorn --bind instead of gunicorn -b 2018-05-14 10:20:27 +03:00
Nikita P. Shupeyko
17739ff263 Refactor POSTGRES_PORT env 2018-05-09 12:58:37 +03:00
Nikita P. Shupeyko
906299ae39 Refactor POSTGRES_HOST env 2018-05-09 12:58:33 +03:00
Nikita Shupeyko
b4d0416530
Fix PostgreSQL backup restore (#1628)
* Export PG* envs when backing up postgres

* Export PG* envs when restoring postgres from backup

* Prevent postgres connection from dropping all at ones

* Alter postgres backups docs  

Include another crucial prerequisite.

* "feel free switching" -> "feel free to switch"

* Address the feedback
2018-05-05 12:27:27 +03:00
Nikita P. Shupeyko
26ccf9307f Fix REDIS_URL missing
Fixes #1570.
2018-04-04 13:42:01 +03:00
Nikita P. Shupeyko
2fa5adc2b0 Designate 'postgres' as a variable in entrypoint.sh
Rationale: clarity.
2018-04-04 11:43:39 +03:00
Nikita P. Shupeyko
897d54b690 Alter Dockerfile comment url to point at dev Django 2018-04-04 11:16:11 +03:00
Nikita Shupeyko
59cd5b4849
Celery code blocks are still generated even though Celery is not opted out for (#1587)
* Celery jinja condition in .gitignore

* Celery jinja conditions in Django Dockerfiles

* Re-phrase Django Dockerfile requirements comments

* Remove celery compose dirs through post_gen_project.py
2018-03-27 18:40:44 +03:00
Nikita Shupeyko
bcd0a8c46e
Fix & improve PostgreSQL backup/restore scripts (#1571)
* Fix & imporve postgres backup/restore scripts

* Update PostgreSQL backup/restore docs

* Fix postgres Dockerfile regression

* Extend error messages in PostgreSQL maintenance scipts
2018-03-14 13:44:16 +03:00
Nikita P. Shupeyko
e1bce92ad9 apk add postgresql-client with django Dockerfile 2018-03-09 11:41:02 +03:00
Nikita P. Shupeyko
03ee6c78d6 Fix CELERY_BROKER_URL overriden in entrypoint.sh
Closes #1235.
2018-03-08 19:04:10 +03:00
Nikita P. Shupeyko
5543359382 Distinguish between POSTGRES_DB and POSTGRES_USER
Closes #1301.
2018-03-08 19:04:10 +03:00
Nikita P. Shupeyko
5261956356 Refactor gunicorn -w to be set from WEB_CONCURRENCY env
Closes #1480.
2018-03-05 14:26:43 +03:00
Bruno Alla
0164c330b3 Move to the python:alpine docker image (#1482)
* Move to the python:alpine docker image

- Switch the base images for local and production to alpine
- Install extra dependencies for psycopg2, Pillow and cffi
- Change shebang for shell scripts to use sh instead of bash

* Move to the python:alpine docker image

- Migrate group and user creation to Alpine syntax

* Move to the python:alpine docker image

- Remove `function` keyword, unsupported in shell

* Upgrade various places to the latest Python 3.6

* Test support for translations

* Add gettext library, required for translations support

* Add locale folder for translations support with README documenting it

* Update Changelog

* Tweak command to test translations support
2018-02-22 10:01:05 -05:00
Reggie Riser
f7bd7a5814 Fixing leftovers from migration to Django 1.11 and Python 3.6. 2018-01-03 08:44:54 -05:00
Nikita P. Shupeyko
e5154f3f01 Prettify production postgres service Dockerfile entries
- group related commands together
- use COPY instead of ADD
2017-09-06 15:05:41 +03:00
Shupeyko Nikita
188ff966f8 Re-organize compose/ into environment-specific file groups (#1317)
* Re-organize compose/ into environment-specific file groups

Closes #1316.

* Commit missing files

That was weird: git failed to commit one specific folder previously
2017-09-05 14:39:20 +03:00
Shupeyko Nikita
ae9f951f45 Use Unix, not Windows environment variable format in Caddyfile (#1314)
Closes #1310.
2017-09-02 20:42:07 +03:00
Wan Liuyang
c50c6a73be Rename Dockerfile-dev to Dockerfile-local (#1305)
* Rename Dockerfile-dev to Dockerfile-local

* Add @sfdye to CONTRIBUTORS.rst
2017-08-28 11:00:59 +03:00
Jannis Gebauer
8801c50867 switch to caddy (#1282) 2017-08-11 11:16:15 +02:00
Shupeyko Nikita
035dc4d7ab Introduce development-time Celery services (#1257)
* Introduce development-time Celery services

Closes #1225.

* Re-order django and postgres services in production.yml

* Switch local service extension tactics

* Fix celery services inheriting ports from the django's
2017-08-11 09:13:30 +02:00
Shupeyko Nikita
e889316b11 Rename dev.yml to local.yml (#1227)
* Rename dev.yml to local.yml

Closes #1226.

* Rename docker-compose.yml to production.yml
2017-07-14 17:09:41 +03:00
Shupeyko Nikita
1f7be4eb57 Revert "Node.JS + docker-compose = ♥" (#1206)
* Revert "[Fix] #1173 Nginx SSL redirect loop (#1174)"

This reverts commit cabcc7b106.

* Revert "Fix Getting Up and Running Locally With Docker doc sphinx warnings (#1165)"

This reverts commit 83c8594203.

* Revert "Fix index.rst sphinx warnings (#1166)"

This reverts commit 51dd0b5e73.

* Revert "Pin mailhog Docker image to v1.0.0 (#1201)"

This reverts commit d9f870461b.

* Revert "Node.JS + docker-compose = ♥ (#1128)"

This reverts commit 4b06fe3958.
2017-06-21 23:12:22 +03:00
Ashish Patil
cabcc7b106 [Fix] #1173 Nginx SSL redirect loop (#1174)
Headers not being passed was causing nginx to redirect to SSL again & again.
2017-06-20 23:33:39 +03:00
Shupeyko Nikita
4b06fe3958 Node.JS + docker-compose = ♥ (#1128)
* Introduce static asset build infrastructure

* Enhance gulpfile.js

* Introduce node service

* BrowserSync debug-only support

* Remove newline before  BrowserSync debug-only support section

* FIx node Dockerfile package.json COPY

* Try fiixing node Dockerfile package.json COPY ones again

* Switch to `node:7-slim`

* Try switching to node:6

To account for possible node:7 docker-compose incompatibiltiy

* Revert "Try switching to node:6"

This reverts commit 62cc02df1a.

* Try switcging workdir to /app

* Try utilizing relative package.json path

* Resetting to the last version working locally with docker-compose 1.11.x

* Build upon the latest node:7.9-slim

* Stop dockerignoring package.json

* Fix typo

* Try a different package.json path

* Revert "Try a different package.json path"

This reverts commit f29f8500b8.

* Revert "Fix typo"

This reverts commit 02033729b5.

* Revert "Stop dockerignoring package.json"

This reverts commit 63c5491546.

* Upgrade docker-engine and docker-compose used by Travis CI

* Fix .travis.yml comments

* Inline docker-engine and docker-compose versions

* DEBUG: pwd

* Revert "DEBUG: pwd "

This reverts commit 6c2ed4321a.

* Try copying package.json to the same dir as node Dockerfile's

* Revert "Try copying package.json to the same dir as node Dockerfile's"

This reverts commit 24340a0783.

* Try out node:7.9

* Revert "Try out node:7.9"

This reverts commit 32286d33c2.

* Revert "Upgrade docker-engine and docker-compose used by Travis CI"

* Get rid of npm-check-updates

Reason: Reserved for the upcoming PR

* Get rid of npm-check

Reason: Reserved for the upcoming PR

* Get rid of 'standard' npm package

Reason: Reserved for the upcoming PR

* Clean up package.json

* Preserve package.json uncoditionally

Since we now have *unconditional* node.js integration, `package.json` must be out there whenever `node` service gets built

* Upgrade node service image to 7.10

* Document Node.js-Docker integration

* Fix gulpfile.js images region name

* Get rid of Gulp migrate task

* Document Gulp-Docker integration

* Introduce static asset build infrastructure

* Enhance gulpfile.js

* Introduce node service

* BrowserSync debug-only support

* Remove newline before  BrowserSync debug-only support section

* FIx node Dockerfile package.json COPY

* Try fiixing node Dockerfile package.json COPY ones again

* Switch to `node:7-slim`

* Try switching to node:6

To account for possible node:7 docker-compose incompatibiltiy

* Revert "Try switching to node:6"

This reverts commit 62cc02df1a.

* Try switcging workdir to /app

* Try utilizing relative package.json path

* Resetting to the last version working locally with docker-compose 1.11.x

* Build upon the latest node:7.9-slim

* Stop dockerignoring package.json

* Revert "Stop dockerignoring package.json"

This reverts commit 63c5491546.

* Fix typo

* Revert "Fix typo"

This reverts commit 02033729b5.

* Try a different package.json path

* Revert "Try a different package.json path"

This reverts commit f29f8500b8.

* Upgrade docker-engine and docker-compose used by Travis CI

* Fix .travis.yml comments

* Inline docker-engine and docker-compose versions

* DEBUG: pwd

* Revert "DEBUG: pwd "

This reverts commit 6c2ed4321a.

* Try copying package.json to the same dir as node Dockerfile's

* Revert "Try copying package.json to the same dir as node Dockerfile's"

This reverts commit 24340a0783.

* Try out node:7.9

* Revert "Try out node:7.9"

This reverts commit 32286d33c2.

* Revert "Upgrade docker-engine and docker-compose used by Travis CI"

* Get rid of npm-check-updates

Reason: Reserved for the upcoming PR

* Get rid of npm-check

Reason: Reserved for the upcoming PR

* Get rid of 'standard' npm package

Reason: Reserved for the upcoming PR

* Clean up package.json

* Preserve package.json uncoditionally

Since we now have *unconditional* node.js integration, `package.json` must be out there whenever `node` service gets built

* Upgrade node service image to 7.10

* Document Node.js-Docker integration

* Fix gulpfile.js images region name

* Get rid of Gulp migrate task

* Document Gulp-Docker integration

* Remove Gulp-Docker integraton not supported initialization message
2017-06-20 22:48:17 +03:00
Delio Castillo
89bc1212b3 Fixes docker file when using letsencrypt. Adds ps command to nginx image for start.sh to be able to run without errors (#1154) 2017-05-12 18:23:22 +02:00
Raphaël Cohen
eb71aecc32 Optimize Django Dockerfile (#1158) 2017-05-06 14:43:26 +02:00
Shupeyko Nikita
9037fb57f3 Fix #1150 (#1151)
Fix #1150
2017-04-29 16:59:05 +03:00
Shupeyko Nikita
f5ccce4ef8 Switch from runtime- to compile-time set production django docker service (#1144)
Extends #971
2017-04-24 23:12:30 +02:00
Daniel Roy Greenfeld
6aced9ba73 Remove Python 2.7 support per #1129 (#1130)
* Remove Python 2.7 support per

* Remove Python 2.7 references

* Remove Python 2.7 references

* remove python 2 entirely
2017-04-21 12:31:45 -07:00
Paul Brown
770abf960d nginx-secure.conf mixed tabs/spaces to only spaces (#902) 2016-11-24 08:21:47 -08:00
Delio Castillo
a4884bb5d7 Update nginx.conf (#808)
* Update nginx.conf

* Update .editorconfig

* Update .editorconfig

* Update nginx.conf

* Update .editorconfig

* Update .editorconfig
2016-09-20 23:22:47 +02:00
Jannis Gebauer
043ff3d8dc Merge pull request #636 from mirskiy/master
Changed nginx confs for dockers new networking
2016-08-31 11:39:16 +02:00
Andreas Meistad
41059ff4df Change use_python2 [N] to use_python3 [Y]
Fixes #747
2016-08-21 22:11:01 +02:00
Jannis Gebauer
34631ad819 adds the ability to wait for the postgres container (#736) 2016-08-16 12:20:41 -07:00
Burhan Khalid
716c179a03 postgresql versions are now selectable 2016-08-10 18:31:48 +03:00
Dan Mirsky
b766b7c4bc Fixes to support renewal with docker's new networking
Added new replacement variable for nginx-secure: ___NAMESERVER___. This
is parsed out from the system resolv.conf and used to resolve the
ip's of the containers dynamically
Modified nginx-secure.conf to resolve certbot dynamically
NOTE: if using `docker-compose run certbot ...`, set `--name certbot` so it
can be resolved properly
Added CMD /start.sh back in, guessing it was removed by accident
2016-07-25 13:14:18 -07:00
Delio Castillo
3e866e0aab makes the database backups compressed. restores compressed backups 2016-06-21 12:29:23 -07:00
Dan Mirsky
5827e7fdb2 Changed nginx confs for dockers new networking
Docker got rid of legacy links so there are no longer env vars pointing
to other containers. Instead, we can reference the containers directly.
This fixes problems with let's encrypt related to missing env vars.
See notice at the top of
https://docs.docker.com/compose/link-env-deprecated/
2016-06-19 00:46:14 -07:00
Daniel Roy Greenfeld
a6c803aaeb Combine RUN commands 2016-06-11 21:22:35 -07:00
Daniel Roy Greenfeld
a65a750464 Switch use_certbot to the MUCH more explicit use_letsencrypt 2016-06-05 13:17:19 -07:00
mjsisley
60bfc7afa1 remove typo /start.sh 2016-06-03 17:07:07 -07:00
mjsisley
4b05499d49 swap COPY to ADD in nginx Dockerfile 2016-06-03 08:39:45 -07:00
mjsisley
b8e02d2189 Add certbot(letsencrypt) support for docker 2016-06-03 08:07:39 -07:00
Audrey Roy Greenfeld
15f350f05e Change repo_name to project_slug for clarity. 2016-04-20 10:00:35 -07:00