Closed cuducos closed 6 years ago
Ok, so let's go test this PR, what I plan to do:
Clone the repository:
$ git clone git@github.com:datasciencebr/jarbas.git
Open the repo folder:
$ cd jarbas
Checkout to @cuducos branch:
$ git fetch origin
$ git checkout -b cuducos-remove-entrypoint-from-prod origin/cuducos-remove-entrypoint-from-prod
$ git merge master
Copy the .env
file:
$ cp contrib/.env.sample .env
Comment out the image: …
and add to docker-compose.yml
on the django
container.
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.
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?
Can you confirm what the output was?
Sure, I'll do it now and post it here
Here it is, I'll put the whole output here 👍
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?
Can you you (re) test it with the proper command?
Sure! Doing it now 👍
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
Yep, it is working:
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 anentrypoint
for the Django production container makes it difficult to run Django commands such aspython manage.py collectstatic
orpython manage.py migrate
.What was done to achieve this purpose? Set
gunicorn
as acommand
not asentrypoint
.How to test if it really works?
Comment out the
image: …
and add todocker-compose.yml
on thedjango
container:Then
docker-compose -f docker-compose.yml -f docker-compose.prod.yml run django collectstatic --noinput