62 Commits

Author SHA1 Message Date
3c487f988b Added cron job to deployment documentation 2019-05-24 10:40:38 +02:00
b08428ed50 Cross-platform support for sed command 2018-12-11 18:14:06 +01:00
5b8088bf77 Use TCP/IP sockets instead of UNIX sockets for uWSGI
The UNIX sockets sometimes timed out, so this is a test to see if TCP/IP
sockets work better.
2018-11-07 12:49:50 +01:00
314fd015ee Reduced timeout between NginX and uWSGI + lowered uWSGI max-requests
This is an attempt to figure out/fix the timeouts between My Data and
Open Data.
2018-11-07 11:06:58 +01:00
b7b10f225c Some more useful commands in bash_history 2018-11-07 11:06:09 +01:00
d83468c5fb Added example crontab 2018-11-06 18:31:28 +01:00
563c96dc8f mark manage-{my,open}data.sh as executable 2018-11-06 18:31:28 +01:00
61042e3bff Linux fix 2018-11-06 18:31:28 +01:00
1d56da62fd docker/deploy → docker/staging
For clarity, and to be in sync with what we do in the Blender Dev Fund
website.
2018-11-06 18:31:28 +01:00
bb61c93773 Reworked Docker image into two parts
This is the same approach as used in the Blender Dev Fund site. The
heavy/time-consuming installation of dependencies is done in the base image,
and the project files are contained in the final image.
2018-11-06 17:40:42 +01:00
7abf9dc8a4 Queue submissions to Open Data when it's unreachable 2018-11-06 17:12:20 +01:00
254cf59d7b Tweaks to prep_elastic.sh
Ensure creation of deploy directory and make sed -i work on macOS.
2018-10-21 13:51:36 +02:00
76810437bc Deleted one line too many 2018-10-09 18:17:13 +02:00
aa2a1f1e75 No longer copy docker-compose.yml to server
It's now managed independently of this project, as it is a cross-project
file.
2018-10-09 17:38:05 +02:00
de1e24b916 Updated REMOTE_DOCKER_COMPOSE_DIR 2018-10-09 17:37:25 +02:00
31c5253274 Remove TLS from docker image in favour of letting Træfik handle it 2018-10-09 16:58:59 +02:00
4ef9fff8b7 Linux fix 2018-10-09 16:58:59 +02:00
8b19bcbf78 Cleanly shut down uwsgi when stopping the docker container + nginx last
Stopping nginx last should keep the friendly '502 bad gateway' page
available for as long as possible before shutting down completely.

Stopping uwsgi cleanly should prevent OSErrors trying to write somewhere
while docker is being shut down.
2018-08-29 09:20:50 +02:00
fb7f3c5ed7 deploy.sh: check whether Docker is alive before doing anything else 2018-08-29 09:10:52 +02:00
96a545cf97 nginx: Allow listing of downloads directory 2018-08-23 12:21:12 +02:00
f530d7c344 Updated elastic-dump.sh for new usage
See Open Data, commit 1f4a0f0ce3faf147f622f05be1432bc38a570fbe
2018-08-23 11:54:32 +02:00
243f0dcd75 Docker entrypoint: doing fail when {open,my}data.log doesn't exist 2018-08-23 10:17:49 +02:00
2f8fa058e6 elastic-dump.sh should be executable 2018-08-23 10:17:35 +02:00
864e876d4a Added script to easily perform the 'Elastic Dump' in Docker 2018-08-22 17:00:17 +02:00
30f48bd5a5 Moved files that go into the root of the docker image into their own dir 2018-08-22 17:00:02 +02:00
4fc195afaf Ensure Python log files are writable before start uWSGI 2018-08-21 17:42:02 +02:00
d564a6cbb7 Update nginx configuration
Now static files for opendata are located in /static/
2018-08-15 12:04:19 +02:00
8bcd09a4e7 Conform directory layout
Move static to webstatic and src to websrc.
This way when we run ./manage.py collectstatic,
files will be copied to the standard static location.

Fixes T56402
2018-08-15 11:13:17 +02:00
9d0177d946 Update repo links to new official location 2018-08-14 16:27:16 +02:00
78fdd31201 Tweak prep_elastic.sh to run on macOS 2018-08-10 21:03:13 +02:00
96d1000852 Show a nice message for a 502 Bad Gateway error 2018-08-10 17:15:18 +02:00
789ad927e1 Added single do-everything deploy script 2018-08-10 16:51:45 +02:00
fe3ad3e0f2 Proper redirect for opendata http → https 2018-08-10 16:39:08 +02:00
3184d8b525 Add more stuff to bash_history 2018-08-10 15:12:18 +02:00
e92704d3dd Clear Redis cache every time the docker container starts 2018-08-10 15:01:25 +02:00
024760c5b4 Map some DNS names to localhost inside the docker container 2018-08-10 15:01:17 +02:00
92ec02335c Make ElasticSearch reachable on the host's localhost:9200
This allows us to tunnel ElasticSearch traffic via an SSH tunnel and use
a locally-installed Kibana to build queries and inspect the index.
2018-08-10 13:39:40 +02:00
14df4eed7b Create Redis log directory if it doesn't exist yet, and fix permissions 2018-08-10 12:45:51 +02:00
432f3e3bd3 Added Redis to the docker image 2018-08-10 12:29:49 +02:00
6f6ff8f07f nginx: Disable SSL stapling to get rid of warnings of it not working 2018-08-10 12:29:29 +02:00
bc11891e9c Easy restarting of the two uWSGI processes
Just run `docker exec mydata /uwsgi-restart mydata` (or 'opendata')
2018-08-10 12:29:10 +02:00
dafcc1e399 Adapted to deploying on sintel.blender.org 2018-08-10 11:08:46 +02:00
70a072f72b More in README.md about deployment 2018-08-09 18:57:45 +02:00
4e078ba1bc Dockerfile: moved the bits that will cause more changes to the bottom 2018-08-09 18:41:35 +02:00
db5f4335a2 Create /var/log/apps for Python's logging, with the correct permissions 2018-08-09 18:39:58 +02:00
2713dee5c6 Added 2server script to easily deploy to the production server
Run `./2server mydata.blender.org` to do this:

 - update the remote docker-compose.yml
 - update the remote docker image
 - reconstruct & restart the remote docker container
2018-08-09 16:25:29 +02:00
c733a1ed8e Docker img: listen on [::0] instead of [::1] + map downloads volume 2018-08-09 16:24:37 +02:00
30a3c822aa Don't wait for enter to start building Docker image 2018-08-09 15:56:42 +02:00
0c125726f9 Use Let's Encrypt certificates 2018-08-09 15:56:33 +02:00
2b6f569e70 Some small deployment fixes 2018-08-09 11:51:42 +02:00