okfn-brasil / jarbas

🎩 API for information and suspicions about reimbursements by Brazilian congresspeople
https://jarbas.serenata.ai/
296 stars 61 forks source link

Remove entrypoint from production compose #302

Closed cuducos closed 6 years ago

cuducos commented 6 years ago

This is needed since on production we still need some Django commands such as collectstatic and migrate

What is the purpose of this Pull Request? Having gunicorn as an entrypoint for the Django production container makes it difficult to run Django commands such as python manage.py collectstatic or python manage.py migrate.

What was done to achieve this purpose? Set gunicorn as a command not as entrypoint.

How to test if it really works?

Comment out the image: … and add to docker-compose.yml on the django container:

  build:
    context: .

Then docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django collectstatic --noinput

anaschwendler commented 6 years ago

Ok, so let's go test this PR, what I plan to do:

  1. Clone the repository:

    $ git clone git@github.com:datasciencebr/jarbas.git
  2. Open the repo folder:

    $ cd jarbas
  3. Checkout to @cuducos branch:

    $ git fetch origin
    $ git checkout -b cuducos-remove-entrypoint-from-prod origin/cuducos-remove-entrypoint-from-prod
    $ git merge master
  4. Copy the .env file:

    $ cp contrib/.env.sample .env
  5. Comment out the image: … and add to docker-compose.yml on the django container.

  6. Commands @cuducos follows:

    $ docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django collectstatic --noinput

For me it looksgood, I'll check later again.

cuducos commented 6 years ago

For me it looks good, I'll check later again.

Just out of curiosity: considering the output you shared in PVT the commands were not executed and we've got an error. Can you confirm what the output was?

anaschwendler commented 6 years ago

Can you confirm what the output was?

Sure, I'll do it now and post it here

anaschwendler commented 6 years ago

Here it is, I'll put the whole output here 👍

```➜ jarbas git:(cuducos-remove-entrypoint-from-prod) ✗ docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django collectstatic --noinput WARNING: The VIRTUAL_HOST_WEB variable is not set. Defaulting to a blank string. WARNING: Some services (proxy) use the 'deploy' key, which will be ignored. Compose does not support 'deploy' configuration - use `docker stack deploy` to deploy to a swarm. Pulling postgres (postgres:9.6.5-alpine)... 9.6.5-alpine: Pulling from library/postgres b1f00a6a160c: Pull complete 25a88a2feda9: Pull complete bcd866a92fb7: Pull complete 8c43cb896f3e: Pull complete 341573b3bddd: Pull complete d7ccfa970786: Pull complete 32d28928466b: Pull complete 8b424957445a: Pull complete 88c1161620fb: Pull complete Digest: sha256:bafac9478d8cca8965d091ee228c6897bfa0e2ad4704c26f58bedc8b37c4cde1 Status: Downloaded newer image for postgres:9.6.5-alpine Pulling elm (datasciencebr/jarbas-frontend:latest)... latest: Pulling from datasciencebr/jarbas-frontend aa18ad1a0d33: Pull complete 90f6d19ae388: Pull complete 94273a890192: Pull complete c9110c904324: Pull complete 788d73c0fb6b: Pull complete f221bb562f24: Pull complete 14414a6a768d: Pull complete af6d2b2ad991: Pull complete 12b7cbb573ea: Pull complete c3539eb9d1a9: Pull complete b7696e80edb9: Pull complete 443efd5ed21c: Pull complete 4cbbc0a0e418: Pull complete 2d856caed1b5: Pull complete f196888c7d69: Pull complete ab00065fd2bb: Pull complete Digest: sha256:4410a13084afd905f1ed32f6edea8e192459be995178c044d0558f7473cc48d9 Status: Downloaded newer image for datasciencebr/jarbas-frontend:latest Pulling queue (rabbitmq:3.6.11-alpine)... 3.6.11-alpine: Pulling from library/rabbitmq 88286f41530e: Pull complete f37b1a2424b3: Pull complete 2799929042f7: Pull complete 1a0ac93c08db: Pull complete 7dc18c248a7b: Pull complete 9085838e09d8: Pull complete 0f793b591a3e: Pull complete 42da39c9c3ca: Pull complete 0a442df56342: Pull complete Digest: sha256:109570cf2ede004fcc5374f8cf35ad26308b393591f5e05736073ed0c264cac2 Status: Downloaded newer image for rabbitmq:3.6.11-alpine Pulling tasks (datasciencebr/jarbas-backend:latest)... latest: Pulling from datasciencebr/jarbas-backend ab7e51e37a18: Pull complete 4a57a4e05b89: Pull complete 81dad7471918: Pull complete 4ca462e5d889: Pull complete fd1617db8f72: Pull complete 217b29c915bb: Pull complete 9682ad93e2ef: Pull complete cd10115b8a32: Pull complete a5a066e36b02: Pull complete 6d590b633320: Pull complete 0c7340aaa26b: Pull complete Digest: sha256:790b9d22f08022eb197b33ea4096b4de63ca4d3454df110d620ddf3813f6c5fb Status: Downloaded newer image for datasciencebr/jarbas-backend:latest Pulling memcached (memcached:1.5.1-alpine)... 1.5.1-alpine: Pulling from library/memcached 88286f41530e: Already exists 5342366c11be: Pull complete 30ff1fef820c: Pull complete d1e0218d82ca: Pull complete 74f32269145f: Pull complete Digest: sha256:e0c1507744732ca960e1dbc61b6dc875c10747df89686a3e054ed2e460152dbb Status: Downloaded newer image for memcached:1.5.1-alpine Creating jarbas_elm_1 ... Creating jarbas_queue_1 ... Creating jarbas_memcached_1 ... Creating jarbas_postgres_1 ... Creating jarbas_elm_1 Creating jarbas_memcached_1 Creating jarbas_postgres_1 Creating jarbas_queue_1 ... done Creating jarbas_tasks_1 ... Creating jarbas_memcached_1 ... done Building django Step 1/12 : FROM python:3.5.4-alpine 3.5.4-alpine: Pulling from library/python ab7e51e37a18: Already exists 4a57a4e05b89: Already exists 81dad7471918: Already exists 4ca462e5d889: Already exists fd1617db8f72: Already exists Digest: sha256:6f315b5a8d41dad74c30863b131bfc7c38fd7828a88abc980981610f78231f80 Status: Downloaded newer image for python:3.5.4-alpine ---> 50351f38d279 Step 2/12 : ENV PYTHONUNBUFFERED 1 GOSS_VERSION ${GOSS_VERSION:-v0.3.5} ---> Running in c0ae8b9ed0c9 ---> e3f1961c4355 Removing intermediate container c0ae8b9ed0c9 Step 3/12 : COPY ./requirements.txt /code/requirements.txt ---> 8ad3c3ab11dd Step 4/12 : COPY ./requirements-dev.txt /code/requirements-dev.txt ---> 6e1d7a0025b2 Step 5/12 : COPY manage.py /code/manage.py ---> ea51e4e74362 Step 6/12 : COPY jarbas /code/jarbas ---> c5b4d256c29d Step 7/12 : COPY goss.yaml /goss/goss.yaml ---> afbb7d8445ea Step 8/12 : WORKDIR /code ---> f100597fe36d Removing intermediate container e703f8995f48 Step 9/12 : RUN set -ex && apk add --no-cache --virtual=.goss-dependencies curl ca-certificates && curl -L https://github.com/aelsabbahy/goss/releases/download/"$GOSS_VERSION"/goss-linux-amd64 -o /usr/local/bin/goss && chmod +rx /usr/local/bin/goss && apk update && apk add --no-cache tzdata libpq && cp /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime && echo "America/Sao_Paulo" > /etc/timezone && apk update && apk add --no-cache --virtual=.build-dependencies gcc musl-dev postgresql-dev git python3-dev && python -m pip --no-cache install -U pip && python -m pip --no-cache install -r requirements-dev.txt && python manage.py collectstatic --no-input && apk del --purge .build-dependencies .goss-dependencies ---> Running in c8c8e7dde210 + apk add --no-cache --virtual=.goss-dependencies curl ca-certificates fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz (1/4) Installing libssh2 (1.7.0-r0) (2/4) Installing libcurl (7.57.0-r0) (3/4) Installing curl (7.57.0-r0) (4/4) Installing .goss-dependencies (0) Executing busybox-1.24.2-r14.trigger OK: 32 MiB in 38 packages + curl -L https://github.com/aelsabbahy/goss/releases/download/v0.3.5/goss-linux-amd64 -o /usr/local/bin/goss % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 606 0 606 0 0 303 0 --:--:-- 0:00:02 --:--:-- 253 100 8312k 100 8312k 0 0 831k 0 0:00:10 0:00:10 --:--:-- 1677k + chmod +rx /usr/local/bin/goss + apk update fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz v3.4.6-254-ge636396 [http://dl-cdn.alpinelinux.org/alpine/v3.4/main] v3.4.6-160-g14ad2a3 [http://dl-cdn.alpinelinux.org/alpine/v3.4/community] OK: 5977 distinct packages available + apk add --no-cache tzdata libpq fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz (1/5) Installing db (5.3.28-r0) (2/5) Installing libsasl (2.1.26-r7) (3/5) Installing libldap (2.4.44-r2) (4/5) Installing libpq (9.5.10-r0) (5/5) Installing tzdata (2016d-r0) Executing busybox-1.24.2-r14.trigger OK: 38 MiB in 43 packages + cp /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime + echo America/Sao_Paulo + apk update fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz v3.4.6-254-ge636396 [http://dl-cdn.alpinelinux.org/alpine/v3.4/main] v3.4.6-160-g14ad2a3 [http://dl-cdn.alpinelinux.org/alpine/v3.4/community] OK: 5977 distinct packages available + apk add --no-cache --virtual=.build-dependencies gcc musl-dev postgresql-dev git python3-dev fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz (1/25) Installing binutils-libs (2.26-r1) (2/25) Installing binutils (2.26-r1) (3/25) Installing gmp (6.1.0-r0) (4/25) Installing isl (0.14.1-r0) (5/25) Installing libgomp (5.3.0-r0) (6/25) Installing libatomic (5.3.0-r0) (7/25) Installing libgcc (5.3.0-r0) (8/25) Installing pkgconf (0.9.12-r0) (9/25) Installing pkgconfig (0.25-r1) (10/25) Installing mpfr3 (3.1.2-r0) (11/25) Installing mpc1 (1.0.3-r0) (12/25) Installing libstdc++ (5.3.0-r0) (13/25) Installing gcc (5.3.0-r0) (14/25) Installing musl-dev (1.1.14-r16) (15/25) Installing zlib-dev (1.2.11-r0) (16/25) Upgrading libcrypto1.0 (1.0.2m-r0 -> 1.0.2n-r0) (17/25) Upgrading libssl1.0 (1.0.2m-r0 -> 1.0.2n-r0) (18/25) Installing openssl-dev (1.0.2n-r0) (19/25) Installing postgresql-libs (9.5.10-r0) (20/25) Installing postgresql-dev (9.5.10-r0) (21/25) Installing pcre (8.38-r1) (22/25) Installing git (2.8.6-r0) (23/25) Installing python3 (3.5.2-r2) (24/25) Installing python3-dev (3.5.2-r2) (25/25) Installing .build-dependencies (0) Executing busybox-1.24.2-r14.trigger OK: 226 MiB in 66 packages + python -m pip --no-cache install -U pip Requirement already up-to-date: pip in /usr/local/lib/python3.5/site-packages + python -m pip --no-cache install -r requirements-dev.txt Collecting django-simple-history from git+https://github.com/cuducos/django-simple-history.git@cuducos-missing-translations-in-pt-br#egg=django-simple-history (from -r requirements.txt (line 1)) Cloning https://github.com/cuducos/django-simple-history.git (to cuducos-missing-translations-in-pt-br) to /tmp/pip-build-39ohaz58/django-simple-history Collecting Django==1.11.7 (from -r requirements.txt (line 2)) Downloading Django-1.11.7-py2.py3-none-any.whl (6.9MB) Collecting brazilnum==0.8.8 (from -r requirements.txt (line 3)) Downloading brazilnum-0.8.8.tar.gz Collecting celery==4.1.0 (from -r requirements.txt (line 4)) Downloading celery-4.1.0-py2.py3-none-any.whl (400kB) Collecting dj-database-url==0.4.2 (from -r requirements.txt (line 5)) Downloading dj_database_url-0.4.2-py2.py3-none-any.whl Collecting django-assets==0.12 (from -r requirements.txt (line 6)) Downloading django-assets-0.12.tar.gz Collecting django-bulk-update==2.2.0 (from -r requirements.txt (line 7)) Downloading django_bulk_update-2.2.0-py2.py3-none-any.whl Collecting django-cors-middleware==1.3.1 (from -r requirements.txt (line 8)) Downloading django-cors-middleware-1.3.1.tar.gz Collecting django-debug-toolbar==1.9.1 (from -r requirements.txt (line 9)) Downloading django_debug_toolbar-1.9.1-py2.py3-none-any.whl (206kB) Collecting django-extensions==1.9.8 (from -r requirements.txt (line 10)) Downloading django_extensions-1.9.8-py2.py3-none-any.whl (209kB) Collecting django-test-without-migrations==0.6 (from -r requirements.txt (line 11)) Downloading django-test-without-migrations-0.6.tar.gz Collecting djangorestframework==3.7.3 (from -r requirements.txt (line 12)) Downloading djangorestframework-3.7.3-py2.py3-none-any.whl (1.5MB) Collecting freezegun==0.3.9 (from -r requirements.txt (line 13)) Downloading freezegun-0.3.9-py2.py3-none-any.whl Collecting gunicorn==19.7.1 (from -r requirements.txt (line 14)) Downloading gunicorn-19.7.1-py2.py3-none-any.whl (111kB) Collecting psycopg2==2.7.3.2 (from -r requirements.txt (line 15)) Downloading psycopg2-2.7.3.2.tar.gz (425kB) Collecting py-gfm==0.1.3 (from -r requirements.txt (line 16)) Downloading py_gfm-0.1.3-py2.py3-none-any.whl Collecting python-decouple==3.1 (from -r requirements.txt (line 17)) Downloading python-decouple-3.1.tar.gz Collecting python-memcached==1.58 (from -r requirements.txt (line 18)) Downloading python-memcached-1.58.tar.gz Collecting python-twitter==3.3 (from -r requirements.txt (line 19)) Downloading python-twitter-3.3.tar.gz (84kB) Collecting reprint==0.3.0 (from -r requirements.txt (line 20)) Downloading reprint-0.3.0-py2.py3-none-any.whl Collecting requests==2.18.4 (from -r requirements.txt (line 21)) Downloading requests-2.18.4-py2.py3-none-any.whl (88kB) Collecting rows==0.3.1 (from -r requirements.txt (line 22)) Downloading rows-0.3.1-py3-none-any.whl (40kB) Collecting ipdb==0.10.3 (from -r requirements-dev.txt (line 3)) Downloading ipdb-0.10.3.tar.gz Collecting mixer==5.6.6 (from -r requirements-dev.txt (line 4)) Downloading mixer-5.6.6-py2.py3-none-any.whl (41kB) Collecting pytz (from Django==1.11.7->-r requirements.txt (line 2)) Downloading pytz-2017.3-py2.py3-none-any.whl (511kB) Collecting billiard<3.6.0,>=3.5.0.2 (from celery==4.1.0->-r requirements.txt (line 4)) Downloading billiard-3.5.0.3-py3-none-any.whl (89kB) Collecting kombu<5.0,>=4.0.2 (from celery==4.1.0->-r requirements.txt (line 4)) Downloading kombu-4.1.0-py2.py3-none-any.whl (181kB) Collecting webassets>=0.11 (from django-assets==0.12->-r requirements.txt (line 6)) Downloading webassets-0.12.1.tar.gz (179kB) Collecting sqlparse>=0.2.0 (from django-debug-toolbar==1.9.1->-r requirements.txt (line 9)) Downloading sqlparse-0.2.4-py2.py3-none-any.whl Collecting six>=1.2 (from django-extensions==1.9.8->-r requirements.txt (line 10)) Downloading six-1.11.0-py2.py3-none-any.whl Collecting typing (from django-extensions==1.9.8->-r requirements.txt (line 10)) Downloading typing-3.6.2-py3-none-any.whl Collecting python-dateutil!=2.0,>=1.0 (from freezegun==0.3.9->-r requirements.txt (line 13)) Downloading python_dateutil-2.6.1-py2.py3-none-any.whl (194kB) Collecting markdown (from py-gfm==0.1.3->-r requirements.txt (line 16)) Downloading Markdown-2.6.10.zip (414kB) Requirement already satisfied: setuptools in /usr/local/lib/python3.5/site-packages (from py-gfm==0.1.3->-r requirements.txt (line 16)) Collecting future (from python-twitter==3.3->-r requirements.txt (line 19)) Downloading future-0.16.0.tar.gz (824kB) Collecting requests-oauthlib (from python-twitter==3.3->-r requirements.txt (line 19)) Downloading requests_oauthlib-0.8.0-py2.py3-none-any.whl Collecting backports.shutil-get-terminal-size (from reprint==0.3.0->-r requirements.txt (line 20)) Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl Collecting urllib3<1.23,>=1.21.1 (from requests==2.18.4->-r requirements.txt (line 21)) Downloading urllib3-1.22-py2.py3-none-any.whl (132kB) Collecting idna<2.7,>=2.5 (from requests==2.18.4->-r requirements.txt (line 21)) Downloading idna-2.6-py2.py3-none-any.whl (56kB) Collecting chardet<3.1.0,>=3.0.2 (from requests==2.18.4->-r requirements.txt (line 21)) Downloading chardet-3.0.4-py2.py3-none-any.whl (133kB) Collecting certifi>=2017.4.17 (from requests==2.18.4->-r requirements.txt (line 21)) Downloading certifi-2017.11.5-py2.py3-none-any.whl (330kB) Collecting unicodecsv (from rows==0.3.1->-r requirements.txt (line 22)) Downloading unicodecsv-0.14.1.tar.gz Collecting ipython>=0.10.2 (from ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading ipython-6.2.1-py3-none-any.whl (745kB) Collecting Faker==0.7.3 (from mixer==5.6.6->-r requirements-dev.txt (line 4)) Downloading Faker-0.7.3-py2.py3-none-any.whl (529kB) Collecting amqp<3.0,>=2.1.4 (from kombu<5.0,>=4.0.2->celery==4.1.0->-r requirements.txt (line 4)) Downloading amqp-2.2.2-py2.py3-none-any.whl (48kB) Collecting oauthlib>=0.6.2 (from requests-oauthlib->python-twitter==3.3->-r requirements.txt (line 19)) Downloading oauthlib-2.0.6.tar.gz (127kB) Collecting traitlets>=4.2 (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading traitlets-4.3.2-py2.py3-none-any.whl (74kB) Collecting pexpect; sys_platform != "win32" (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading pexpect-4.3.1-py2.py3-none-any.whl (55kB) Collecting simplegeneric>0.8 (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading simplegeneric-0.8.1.zip Collecting pickleshare (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading pickleshare-0.7.4-py2.py3-none-any.whl Collecting jedi>=0.10 (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading jedi-0.11.1-py2.py3-none-any.whl (250kB) Collecting pygments (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB) Collecting decorator (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading decorator-4.1.2-py2.py3-none-any.whl Collecting prompt-toolkit<2.0.0,>=1.0.4 (from ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading prompt_toolkit-1.0.15-py3-none-any.whl (247kB) Collecting vine>=1.1.3 (from amqp<3.0,>=2.1.4->kombu<5.0,>=4.0.2->celery==4.1.0->-r requirements.txt (line 4)) Downloading vine-1.1.4-py2.py3-none-any.whl Collecting ipython-genutils (from traitlets>=4.2->ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl Collecting ptyprocess>=0.5 (from pexpect; sys_platform != "win32"->ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading ptyprocess-0.5.2-py2.py3-none-any.whl Collecting parso==0.1.1 (from jedi>=0.10->ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading parso-0.1.1-py2.py3-none-any.whl (91kB) Collecting wcwidth (from prompt-toolkit<2.0.0,>=1.0.4->ipython>=0.10.2->ipdb==0.10.3->-r requirements-dev.txt (line 3)) Downloading wcwidth-0.1.7-py2.py3-none-any.whl Installing collected packages: django-simple-history, pytz, Django, brazilnum, billiard, vine, amqp, kombu, celery, dj-database-url, webassets, django-assets, django-bulk-update, django-cors-middleware, sqlparse, django-debug-toolbar, six, typing, django-extensions, django-test-without-migrations, djangorestframework, python-dateutil, freezegun, gunicorn, psycopg2, markdown, py-gfm, python-decouple, python-memcached, future, urllib3, idna, chardet, certifi, requests, oauthlib, requests-oauthlib, python-twitter, backports.shutil-get-terminal-size, reprint, unicodecsv, rows, ipython-genutils, decorator, traitlets, ptyprocess, pexpect, simplegeneric, pickleshare, parso, jedi, pygments, wcwidth, prompt-toolkit, ipython, ipdb, Faker, mixer Running setup.py install for django-simple-history: started Running setup.py install for django-simple-history: finished with status 'done' Running setup.py install for brazilnum: started Running setup.py install for brazilnum: finished with status 'done' Running setup.py install for webassets: started Running setup.py install for webassets: finished with status 'done' Running setup.py install for django-assets: started Running setup.py install for django-assets: finished with status 'done' Running setup.py install for django-cors-middleware: started Running setup.py install for django-cors-middleware: finished with status 'done' Running setup.py install for django-test-without-migrations: started Running setup.py install for django-test-without-migrations: finished with status 'done' Running setup.py install for psycopg2: started Running setup.py install for psycopg2: finished with status 'done' Running setup.py install for markdown: started Running setup.py install for markdown: finished with status 'done' Running setup.py install for python-decouple: started Running setup.py install for python-decouple: finished with status 'done' Running setup.py install for python-memcached: started Running setup.py install for python-memcached: finished with status 'done' Running setup.py install for future: started Running setup.py install for future: finished with status 'done' Running setup.py install for oauthlib: started Running setup.py install for oauthlib: finished with status 'done' Running setup.py install for python-twitter: started Running setup.py install for python-twitter: finished with status 'done' Running setup.py install for unicodecsv: started Running setup.py install for unicodecsv: finished with status 'done' Running setup.py install for simplegeneric: started Running setup.py install for simplegeneric: finished with status 'done' Running setup.py install for ipdb: started Running setup.py install for ipdb: finished with status 'done' Successfully installed Django-1.11.7 Faker-0.7.3 amqp-2.2.2 backports.shutil-get-terminal-size-1.0.0 billiard-3.5.0.3 brazilnum-0.8.8 celery-4.1.0 certifi-2017.11.5 chardet-3.0.4 decorator-4.1.2 dj-database-url-0.4.2 django-assets-0.12 django-bulk-update-2.2.0 django-cors-middleware-1.3.1 django-debug-toolbar-1.9.1 django-extensions-1.9.8 django-simple-history-1.8.2 django-test-without-migrations-0.6 djangorestframework-3.7.3 freezegun-0.3.9 future-0.16.0 gunicorn-19.7.1 idna-2.6 ipdb-0.10.3 ipython-6.2.1 ipython-genutils-0.2.0 jedi-0.11.1 kombu-4.1.0 markdown-2.6.10 mixer-5.6.6 oauthlib-2.0.6 parso-0.1.1 pexpect-4.3.1 pickleshare-0.7.4 prompt-toolkit-1.0.15 psycopg2-2.7.3.2 ptyprocess-0.5.2 py-gfm-0.1.3 pygments-2.2.0 python-dateutil-2.6.1 python-decouple-3.1 python-memcached-1.58 python-twitter-3.3 pytz-2017.3 reprint-0.3.0 requests-2.18.4 requests-oauthlib-0.8.0 rows-0.3.1 simplegeneric-0.8.1 six-1.11.0 sqlparse-0.2.4 traitlets-4.3.2 typing-3.6.2 unicodecsv-0.14.1 urllib3-1.22 vine-1.1.4 wcwidth-0.1.7 webassets-0.12.1 + python manage.py collectstatic --no-input Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/base.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/bootstrap.min.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/bootstrap-theme.min.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/highlight.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/font-awesome-4.0.3.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/css/jquery.json-view.min.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/js/bootstrap.min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/js/jquery.json-view.min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/js/api.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/js/jquery-1.10.2.min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/js/highlight.pack.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/glyphicons-halflings-regular.ttf' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/fontawesome-webfont.eot' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/glyphicons-halflings-regular.woff' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/glyphicons-halflings-regular.svg' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/glyphicons-halflings-regular.woff2' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/fontawesome-webfont.svg' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/fontawesome-webfont.ttf' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/fontawesome-webfont.woff' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/fonts/glyphicons-halflings-regular.eot' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/img/favicon.ico' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/docs/img/grid.png' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/css/prettify.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/css/bootstrap.min.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/css/bootstrap-tweaks.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/css/default.css' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/coreapi-0.1.1.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/bootstrap.min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/jquery-1.12.4.min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/prettify-min.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/ajax-form.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/csrf.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/js/default.js' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.ttf' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.woff' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.svg' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.woff2' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/fonts/glyphicons-halflings-regular.eot' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/img/grid.png' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/img/glyphicons-halflings-white.png' Copying '/usr/local/lib/python3.5/site-packages/rest_framework/static/rest_framework/img/glyphicons-halflings.png' Copying '/code/jarbas/frontend/static/digitalocean.png' Copying '/code/jarbas/frontend/static/favicon/favicon-96x96.png' Copying '/code/jarbas/frontend/static/favicon/favicon-16x16.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-72x72.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-60x60.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-57x57.png' Copying '/code/jarbas/frontend/static/favicon/favicon-32x32.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-72x72.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-36x36.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-precomposed.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-114x114.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-192x192.png' Copying '/code/jarbas/frontend/static/favicon/browserconfig.xml' Copying '/code/jarbas/frontend/static/favicon/apple-icon.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-96x96.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-120x120.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-144x144.png' Copying '/code/jarbas/frontend/static/favicon/ms-icon-144x144.png' Copying '/code/jarbas/frontend/static/favicon/favicon.ico' Copying '/code/jarbas/frontend/static/favicon/apple-icon-180x180.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-144x144.png' Copying '/code/jarbas/frontend/static/favicon/apple-icon-152x152.png' Copying '/code/jarbas/frontend/static/favicon/ms-icon-70x70.png' Copying '/code/jarbas/frontend/static/favicon/manifest.json' Copying '/code/jarbas/frontend/static/favicon/apple-icon-76x76.png' Copying '/code/jarbas/frontend/static/favicon/ms-icon-150x150.png' Copying '/code/jarbas/frontend/static/favicon/android-icon-48x48.png' Copying '/code/jarbas/frontend/static/favicon/ms-icon-310x310.png' Copying '/code/jarbas/dashboard/static/dashboard.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/login.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/fonts.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/dashboard.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/changelists.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/base.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/widgets.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/forms.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/css/rtl.css' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/inlines.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/change_form.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/cancel.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/urlify.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/timeparse.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/popup_response.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/actions.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/jquery.init.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/prepopulate.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/actions.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/inlines.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/prepopulate.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/core.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/collapse.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/calendar.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/SelectBox.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/collapse.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE-JQUERY.txt' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE-XREGEXP.txt' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/fonts/README.txt' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Bold-webfont.woff' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/fonts/LICENSE.txt' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Light-webfont.woff' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/fonts/Roboto-Regular-webfont.woff' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/README.txt' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-no.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/search.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/LICENSE' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg' Copying '/usr/local/lib/python3.5/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg' Copying '/usr/local/lib/python3.5/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css' Copying '/usr/local/lib/python3.5/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js' Copying '/usr/local/lib/python3.5/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js' Copying '/usr/local/lib/python3.5/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js' Copying '/usr/local/lib/python3.5/site-packages/django_extensions/static/django_extensions/img/indicator.gif' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/css/print.css' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/jquery_existing.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.profiling.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/jquery_post.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.template.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/jquery_pre.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.sql.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.timer.js' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/close.png' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/ajax-loader.gif' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/back_hover.png' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/indicator.png' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/back.png' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/close_hover.png' Copying '/usr/local/lib/python3.5/site-packages/debug_toolbar/static/debug_toolbar/img/djdt_vertical.png' 153 static files copied to '/code/staticfiles'. + apk del --purge .build-dependencies .goss-dependencies (1/27) Purging .goss-dependencies (0) (2/27) Purging curl (7.57.0-r0) (3/27) Purging .build-dependencies (0) (4/27) Purging gcc (5.3.0-r0) (5/27) Purging binutils (2.26-r1) (6/27) Purging isl (0.14.1-r0) (7/27) Purging libatomic (5.3.0-r0) (8/27) Purging musl-dev (1.1.14-r16) (9/27) Purging postgresql-dev (9.5.10-r0) (10/27) Purging openssl-dev (1.0.2n-r0) (11/27) Purging zlib-dev (1.2.11-r0) (12/27) Purging postgresql-libs (9.5.10-r0) (13/27) Purging git (2.8.6-r0) (14/27) Purging python3-dev (3.5.2-r2) (15/27) Purging pkgconfig (0.25-r1) (16/27) Purging pkgconf (0.9.12-r0) (17/27) Purging python3 (3.5.2-r2) (18/27) Purging libcurl (7.57.0-r0) (19/27) Purging libssh2 (1.7.0-r0) (20/27) Purging binutils-libs (2.26-r1) (21/27) Purging mpc1 (1.0.3-r0) (22/27) Purging mpfr3 (3.1.2-r0) (23/27) Purging gmp (6.1.0-r0) (24/27) Purging libgomp (5.3.0-r0) (25/27) Purging libstdc++ (5.3.0-r0) (26/27) Purging libgcc (5.3.0-r0) (27/27) Purging pcre (8.38-r1) Executing busybox-1.24.2-r14.trigger OK: 37 MiB in 39 packages ---> 6afa9b429555 Removing intermediate container c8c8e7dde210 Step 10/12 : HEALTHCHECK --interval=1m --timeout=2m CMD goss -g /goss/goss.yaml validate ---> Running in 50abc0c8d1de ---> 78944df00cc3 Removing intermediate container 50abc0c8d1de Step 11/12 : EXPOSE 8000 ---> Running in 5ebe0b7f07f1 ---> 75cea33d928e Removing intermediate container 5ebe0b7f07f1 Step 12/12 : CMD python manage.py runserver 0.0.0.0:8000 ---> Running in 935b14a7d4aa ---> fb93d8cec1a5 Removing intermediate container 935b14a7d4aa Successfully built fb93d8cec1a5 Successfully tagged jarbas_django:latest WARNING: Image for service django was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`. ERROR: Cannot start service django: oci runtime error: container_linux.go:265: starting container process caused "exec: \"collectstatic\": executable file not found in $PATH" ```
cuducos commented 6 years ago

Ok, my bad (gonna update the opening post).

But first things first: there was an error in your output (last line):

ERROR: Cannot start service django: oci runtime error: container_linux.go:265: starting container process caused "exec: \"collectstatic\": executable file not found in $PATH"

The error is caused because I wrongly suggested docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django collectstatic --noinput (the old and problematic way I was trying to get rid of) instead of docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django python manage collectstatic --noinput (the ideal way so far). Can you you (re) test it with the proper command?

anaschwendler commented 6 years ago

Can you you (re) test it with the proper command?

Sure! Doing it now 👍

anaschwendler commented 6 years ago

The right command is:

$ docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django python manage.py collectstatic --noinput

Just to document, I'm running the migrations just to make sure that everything is working, once it is done, I'll be merging it

anaschwendler commented 6 years ago

Yep, it is working: image