{"guid":"272a6c50-7083-5987-bc28-c0c6cbfc2d8f","title":"Can packaging improve Django deployments?","subtitle":null,"slug":"hd-117-can-packaging-improve-django-deployments-","link":"https://c3voc.de","description":"How can packaging Django projects make deployments easier, faster and more reliable?\n\nDeployments of Django projects can be a challenging task. Beside the Python source code itself you usually have to handle a lot of other stuff:\n\n* Installing Python dependencies\n* Shipping JavaScript code and installing it's dependencies\n* Compiling SCSS to CSS\n* Collecting static files\n* Building documentation\n* Compiling translations\n* …\n\nAnd of course you want a deployment approach that is independent of a specific hosting solution.\n\nAlso you have to think about the scalability of your deployment when the number of servers you operate increases.\n\nThis usually means that `git pull` is not the best way to deal with these tasks.\n\nSo I will discuss different ways to package your Django project like\n\n* Wheels\n* JavaScript packages\n* Operating system packages\n* Containers\n\nSome of these concepts will hopefully help you to make your deployment process easier, faster and more reliable.","original_language":"eng","persons":["Markus Zapke-Gründemann"],"tags":["djangocon2018","117"],"view_count":134,"promoted":false,"date":"2018-05-23T00:00:00.000+02:00","release_date":"2018-05-23T02:00:00.000+02:00","updated_at":"2025-02-11T23:00:10.595+01:00","length":1763,"duration":1763,"thumb_url":"https://static.media.ccc.de/media/conferences/djangocon2018/117-hd.jpg","poster_url":"https://static.media.ccc.de/media/conferences/djangocon2018/117-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/conferences/djangocon2018/272a6c50-7083-5987-bc28-c0c6cbfc2d8f-timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/conferences/djangocon2018/272a6c50-7083-5987-bc28-c0c6cbfc2d8f-thumbnails.vtt","frontend_link":"https://media.ccc.de/v/hd-117-can-packaging-improve-django-deployments-","url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_title":"DjangoCon Europe 2018","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018","related":[{"event_id":5433,"event_guid":"50c2e0a9-ba96-57bf-9f35-73782b2548d9","weight":11},{"event_id":5434,"event_guid":"f2c3b29f-d6d1-5196-ba0d-c094e805ce04","weight":11},{"event_id":5436,"event_guid":"c385ad1d-5cfd-55bd-afa1-a453f9e338c3","weight":16},{"event_id":5438,"event_guid":"66a5d858-82d8-5f9c-b252-b97d61b6cf54","weight":11},{"event_id":5440,"event_guid":"8dee6863-f2ab-5d48-9260-11d017abb870","weight":11}],"recordings":[{"size":90,"length":1763,"mime_type":"video/mp4","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-05-23T15:49:09.197+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/h264-hd/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_hd.mp4","url":"https://api.media.ccc.de/public/recordings/25427","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"},{"size":131,"length":1763,"mime_type":"video/webm","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-05-23T16:41:38.106+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/webm-hd/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/25434","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"},{"size":52,"length":1763,"mime_type":"video/webm","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-05-23T16:42:07.208+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/webm-sd/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/25435","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"},{"size":41,"length":1763,"mime_type":"video/mp4","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-05-23T16:42:38.865+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/h264-sd/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_sd.mp4","url":"https://api.media.ccc.de/public/recordings/25436","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"},{"size":26,"length":1757,"mime_type":"audio/mpeg","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2018-05-23T16:46:05.977+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/mp3/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/25441","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"},{"size":16,"length":1757,"mime_type":"audio/opus","language":"eng","filename":"djangocon2018-117-eng-Can_packaging_improve_Django_deployments_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2018-05-23T16:46:36.490+02:00","recording_url":"https://cdn.media.ccc.de/events/djangocon2018/opus/djangocon2018-117-eng-Can_packaging_improve_Django_deployments_opus.opus","url":"https://api.media.ccc.de/public/recordings/25442","event_url":"https://api.media.ccc.de/public/events/272a6c50-7083-5987-bc28-c0c6cbfc2d8f","conference_url":"https://api.media.ccc.de/public/conferences/djangocon2018"}]}