You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
is a GitHub Gist with some great explanations for why we're setting up
8480
8480
virtualenv and what to watch out for while you're doing the deployment.</p>
8481
8481
</li>
8482
+
</ul>
8483
+
<h1>Ubuntu</h1>
8484
+
<p>Ubuntu is a Debian Linux-based operating system distribution often used for
8485
+
Python development and application deployment.</p>
8486
+
<h2>Why is Ubuntu important for Python?</h2>
8487
+
<p>Ubuntu is one of the most commonly used Linux distributions for both local
8488
+
development and server deployments. Some
8489
+
<ahref="/platform-as-a-service.html">platforms-as-a-service</a> such as Heroku run
8490
+
Ubuntu as the base operating system, so as a Python developer you'll often
8491
+
have to work with Ubuntu or a similar Debian-based Linux operating system.</p>
8492
+
<h2>What does "LTS" mean for Ubuntu?</h2>
8493
+
<p>Every two years Ubuntu releases a Long-Term Support (LTS) version that
8494
+
receives five years of updates instead of only two years for non-LTS
8495
+
releases. However, there are some issues with the current LTS model,
8496
+
in that you
8497
+
<ahref="http://www.wilderssecurity.com/threads/ubuntu-lts-many-vulnerabilities-despite-long-term-support.385386/">must only use packages from the main repository</a>
8498
+
unless you're going to manually handle security updates for non-main
8499
+
repository system packages.</p>
8500
+
<h2>Additional Ubuntu resources</h2>
8501
+
<ul>
8502
+
<li>
8503
+
<p>Get your Python <ahref="/development-environments.html">development environment</a>
8504
+
set up with one of these quick tutorials for Ubuntu 16.04 LTS:</p>
8505
+
<ul>
8506
+
<li><ahref="/blog/python-3-flask-green-unicorn-ubuntu-1604-xenial-xerus.html">How to set up Python 3, Flask and Green Unicorn on Ubuntu 16.04 LTS</a></li>
8507
+
<li><ahref="/blog/python-3-bottle-gunicorn-ubuntu-1604-xenial-xerus.html">Configuring Python 3, Bottle and Gunicorn for Development on Ubuntu 16.04 LTS</a></li>
8508
+
<li><ahref="/blog/python-3-django-gunicorn-ubuntu-1604-xenial-xerus.html">Setting up Python 3, Django and Gunicorn on Ubuntu 16.04 LTS</a></li>
8509
+
</ul>
8510
+
</li>
8511
+
<li>
8512
+
<p>There are also walkthroughs for configuring relational databases and Redis
8513
+
on Ubuntu:</p>
8514
+
<ul>
8515
+
<li><ahref="/blog/postgresql-python-3-psycopg2-ubuntu-1604.html">Setting up PostgreSQL with Python 3 and psycopg on Ubuntu 16.04</a></li>
8516
+
<li><ahref="/blog/install-mysql-ubuntu-1604.html">How to Install and Use MySQL on Ubuntu 16.04</a></li>
8517
+
<li><ahref="/blog/install-redis-use-python-3-ubuntu-1604.html">How to Use Redis with Python 3 and redis-py on Ubuntu 16.04</a></li>
8518
+
</ul>
8519
+
</li>
8520
+
<li>
8521
+
<p>Canonical, the organization that produces Ubuntu, typically pushes the
8522
+
boundaries on non-LTS releases, but occasionally rocks the boat with
8523
+
major changes for an LTS release. 16.04 LTS was one such version, which
8524
+
is described in this article about how
8525
+
<ahref="http://arstechnica.com/information-technology/2016/05/ubuntu-16-04-proves-even-an-lts-release-can-live-at-linuxs-bleeding-edge/">Ubuntu 16.04 proves even an LTS release can live at Linux's bleeding edge</a>.</p>
8526
+
</li>
8527
+
<li>Ubuntu has been a target operating system for Docker since the beginning of
8528
+
the project. Here's a guide for
8529
+
<ahref="http://www.liquidweb.com/kb/how-to-install-docker-on-ubuntu-14-04-lts/">how to install Docker on Ubuntu 14.04 LTS</a>,
8530
+
one of the older operating system releases that supports containers.</li>
8482
8531
</ul>
8483
8532
<h1>Testing</h1>
8484
8533
<p>Testing determines whether software runs correctly based on specific inputs
0 commit comments