{"title":"Django のインストール方法","version":"3.1","locale":"ja","docname":"topics/install","url":"/ja/3.1/topics/install/","canonical":"https://djangodocs.dev/ja/3.1/topics/install/","summary":"このドキュメントを読めば、Django をセットアップして、起動することができます。 Python をインストールする Link to this heading # Django は Python のウェブフレームワークです。詳細は :ref: ` faq-python-version-support`を参照してください。…","html":"<h1>Django のインストール方法<a class=\"heading-anchor\" href=\"#how-to-install-django\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>このドキュメントを読めば、Django をセットアップして、起動することができます。</p>\n<section id=\"install-python\">\n<h2>Python をインストールする<a class=\"heading-anchor\" href=\"#install-python\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Django は Python のウェブフレームワークです。詳細は :ref:<a href=\"#id1\"><span class=\"problematic\" id=\"id2\">`</span></a>faq-python-version-support`を参照してください。</p>\n<p>最新版のPythonを <a class=\"reference external\" href=\"https://www.python.org/downloads/\">https://www.python.org/downloads/</a> もしくはOSのパッケージ管理ツールで取得してください。</p>\n<aside class=\"admonition-python-on-windows admonition\">\n<p class=\"admonition-title\">Python on Windows</p>\n<p>もし Windows を使っていてこれから Django を始めるなら、 <a class=\"reference internal\" href=\"/ja/3.1/howto/windows/\"><span class=\"doc\">Windows での Django のインストール方法</span></a> を読むとよいでしょう。</p>\n</aside>\n</section>\n<section id=\"install-apache-and-mod-wsgi\">\n<h2>Apache と <code class=\"docutils literal notranslate\"><span class=\"pre\">mod_wsgi</span></code> のインストール<a class=\"heading-anchor\" href=\"#install-apache-and-mod-wsgi\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>もし単に Django を使って実験したいだけなら、このセクションは飛ばしてください。 Django には軽量 web サーバーが含まれており、テスト用にそれが使えます。本番環境にデプロイするときまで、 Apache をセットアップする必要はありません。</p>\n<p>本番サイトでDjangoを使用する場合は、<a class=\"reference external\" href=\"https://httpd.apache.org/\">Apache</a> と <a class=\"reference external\" href=\"https://modwsgi.readthedocs.io/en/develop/\">mod_wsgi</a> を使用します。mod_wsgiは、埋め込みモードまたはデーモンモードの2つのモードのいずれかで動作します。埋め込みモードでは、mod_wsgi は mod_perl と似ています。つまり Apache に Python を埋め込み、サーバーの起動時に Python コードをメモリにロードします。コードは Apache プロセスの存続期間中、メモリに残ります。これにより、他のサーバー配置よりも大幅にパフォーマンスが向上します。デーモンモードでは、mod_wsgi はリクエストを処理する独立したデーモンプロセスを生成します。デーモンプロセスはウェブサーバーとは異なるユーザーとして実行できるため、セキュリティが向上する可能性があります。デーモンプロセスは、Apache ウェブサーバー全体を再起動せずに再起動できるため、コードベースの更新がよりシームレスになります。mod_wsgi のドキュメントを参照して、セットアップに適したモードを判断してください。mod_wsgi モジュールをアクティブにして Apache がインストールされていることを確認してください。Django は、mod_wsgi をサポートするすべてのバージョンの Apache で動作します。</p>\n<p>インストール完了後の mod_wsgi の設定方法に関する情報については、<a class=\"reference internal\" href=\"/ja/3.1/howto/deployment/wsgi/modwsgi/\"><span class=\"doc\">Django を Apache と mod_swgi とともに使うには？</span></a> を読んでください。</p>\n<p>何らかの理由により mod_wsgi が使えなかったとしても、心配はいりません。Django は他にもさまざまな開発オプションをサポートしています。そのうちの一つは <a class=\"reference internal\" href=\"/ja/3.1/howto/deployment/wsgi/uwsgi/\"><span class=\"doc\">uWSGI</span></a> で、<a class=\"reference external\" href=\"https://nginx.org/\">nginx</a> と非常に上手く連携できます。さらに、Django は WSGI の仕様 (<span class=\"target\" id=\"index-2\"></span><a class=\"pep reference external\" href=\"https://peps.python.org/pep-3333/\"><strong>PEP 3333</strong></a>) を満たしているので、各種のサーバープラットフォーム上で動作することが保証されています。</p>\n</section>\n<section id=\"get-your-database-running\">\n<span id=\"database-installation\"></span><h2>データベースを動かす<a class=\"heading-anchor\" href=\"#get-your-database-running\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>DjangoのデータベースAPI機能を使用する場合は、データベースサーバーが実行されていることを確認する必要があります。Djangoは多くの異なるデータベースサーバーをサポートし、<a class=\"reference external\" href=\"https://www.postgresql.org/\">PostgreSQL</a>、<a class=\"reference external\" href=\"https://mariadb.org/\">MariaDB</a>、<a class=\"reference external\" href=\"https://www.mysql.com/\">MySQL</a>、<a class=\"reference external\" href=\"https://www.oracle.com/\">Oracle</a> および <a class=\"reference external\" href=\"https://www.sqlite.org/\">SQLite</a> で公式にサポートされています。</p>\n<p>If you are developing a small project or something you don't plan to deploy in\na production environment, SQLite is generally the best option as it doesn't\nrequire running a separate server. However, SQLite has many differences from\nother databases, so if you are working on something substantial, it's\nrecommended to develop with the same database that you plan on using in\nproduction.</p>\n<p>公式にサポートされているデータベースの他に、サードパーティ製のバックエンドもあります（これらを使うと、他のデータベースを Django から使えます）。</p>\n<p>バックエンドに加えて、 Python のデータベースバインディングをインストールする必要があります。</p>\n<ul class=\"simple\">\n<li><p>もし PostgreSQL を使うなら、 <a class=\"reference external\" href=\"https://www.psycopg.org/\">psycopg2</a> パッケージが必要になります。詳細は <a class=\"reference internal\" href=\"/ja/3.1/ref/databases/#postgresql-notes\"><span class=\"std std-ref\">PostgreSQL notes</span></a> を見てください。</p></li>\n<li><p>If you're using MySQL or MariaDB, you'll need a <a class=\"reference internal\" href=\"/ja/3.1/ref/databases/#mysql-db-api-drivers\"><span class=\"std std-ref\">DB API driver</span></a> like <code class=\"docutils literal notranslate\"><span class=\"pre\">mysqlclient</span></code>. See <a class=\"reference internal\" href=\"/ja/3.1/ref/databases/#mysql-notes\"><span class=\"std std-ref\">notes for the MySQL\nbackend</span></a> for details.</p></li>\n<li><p>SQLite を使うなら、 <a class=\"reference internal\" href=\"/ja/3.1/ref/databases/#sqlite-notes\"><span class=\"std std-ref\">SQLite backend notes</span></a> を読むと良いでしょう。</p></li>\n<li><p>Oracle を使うなら <a class=\"reference external\" href=\"https://oracle.github.io/python-cx_Oracle/\">cx_Oracle</a> のコピーが必要ですが、 <a class=\"reference internal\" href=\"/ja/3.1/ref/databases/#oracle-notes\"><span class=\"std std-ref\">notes for the Oracle backend</span></a> を読んで、 Oracle と <code class=\"docutils literal notranslate\"><span class=\"pre\">cx_Oracle</span></code> の両方について、 Django がサポートするバージョンを確認してください。</p></li>\n<li><p>もし非公式のサードパーティ製バックエンドを使う場合、その他の動作要件についてはそのドキュメントを確認してください。</p></li>\n</ul>\n<p>If you plan to use Django's <code class=\"docutils literal notranslate\"><span class=\"pre\">manage.py</span> <span class=\"pre\">migrate</span></code> command to automatically\ncreate database tables for your models (after first installing Django and\ncreating a project), you'll need to ensure that Django has permission to create\nand alter tables in the database you're using; if you plan to manually create\nthe tables, you can grant Django <code class=\"docutils literal notranslate\"><span class=\"pre\">SELECT</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">INSERT</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">UPDATE</span></code> and\n<code class=\"docutils literal notranslate\"><span class=\"pre\">DELETE</span></code> permissions. After creating a database user with these permissions,\nyou'll specify the details in your project's settings file, see\n<a class=\"reference internal\" href=\"/ja/3.1/ref/settings/#std-setting-DATABASES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DATABASES</span></code></a> for details.</p>\n<p>データベースのクエリをテストするために Django の <a class=\"reference internal\" href=\"/ja/3.1/topics/testing/\"><span class=\"doc\">testing framework</span></a> を使う場合、テスト用データベースを作成するためのパーミッションが Django に必要です。</p>\n</section>\n<section id=\"install-the-django-code\">\n<span id=\"install-django-code\"></span><h2>Install the Django code<a class=\"heading-anchor\" href=\"#install-the-django-code\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Installation instructions are slightly different depending on whether you're\ninstalling a distribution-specific package, downloading the latest official\nrelease, or fetching the latest development version.</p>\n<section id=\"installing-an-official-release-with-pip\">\n<span id=\"installing-official-release\"></span><h3>Installing an official release with <code class=\"docutils literal notranslate\"><span class=\"pre\">pip</span></code><a class=\"heading-anchor\" href=\"#installing-an-official-release-with-pip\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>This is the recommended way to install Django.</p>\n<ol class=\"arabic\">\n<li><p>Install <a class=\"reference external\" href=\"https://pip.pypa.io/\">pip</a>. The easiest is to use the <a class=\"reference external\" href=\"https://pip.pypa.io/en/latest/installing/#installing-with-get-pip-py\">standalone pip installer</a>. If your\ndistribution already has <code class=\"docutils literal notranslate\"><span class=\"pre\">pip</span></code> installed, you might need to update it if\nit's outdated. If it's outdated, you'll know because installation won't\nwork.</p></li>\n<li><p>Take a look at <a class=\"reference external\" href=\"https://docs.python.org/3/tutorial/venv.html\" title=\"(in Python v3.14)\"><span class=\"xref std std-doc\">venv</span></a>. This tool provides\nisolated Python environments, which are more practical than installing\npackages systemwide. It also allows installing packages without\nadministrator privileges. The <a class=\"reference internal\" href=\"/ja/3.1/intro/contributing/\"><span class=\"doc\">contributing tutorial</span></a> walks through how to create a virtual environment.</p></li>\n<li><p>After you've created and activated a virtual environment, enter the command:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-0-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\">$ </span>python<span class=\"w\"> </span>-m<span class=\"w\"> </span>pip<span class=\"w\"> </span>install<span class=\"w\"> </span>Django\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-0-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> py -m pip install Django\n</code></pre></div></div></div>\n</li>\n</ol>\n</section>\n<section id=\"installing-a-distribution-specific-package\">\n<span id=\"installing-distribution-package\"></span><h3>Installing a distribution-specific package<a class=\"heading-anchor\" href=\"#installing-a-distribution-specific-package\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Check the <a class=\"reference internal\" href=\"/ja/3.1/misc/distributions/\"><span class=\"doc\">distribution specific notes</span></a> to see if\nyour platform/distribution provides official Django packages/installers.\nDistribution-provided packages will typically allow for automatic installation\nof dependencies and supported upgrade paths; however, these packages will rarely\ncontain the latest release of Django.</p>\n</section>\n<section id=\"installing-the-development-version\">\n<span id=\"installing-development-version\"></span><h3>Installing the development version<a class=\"heading-anchor\" href=\"#installing-the-development-version\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<aside class=\"admonition-tracking-django-development admonition\">\n<p class=\"admonition-title\">Tracking Django development</p>\n<p>If you decide to use the latest development version of Django,\nyou'll want to pay close attention to <a class=\"reference external\" href=\"https://code.djangoproject.com/timeline\">the development timeline</a>,\nand you'll want to keep an eye on the <a class=\"reference internal\" href=\"/ja/3.1/releases/#development-release-notes\"><span class=\"std std-ref\">release notes for the\nupcoming release</span></a>. This will help you stay\non top of any new features you might want to use, as well as any changes\nyou'll need to make to your code when updating your copy of Django.\n(For stable releases, any necessary changes are documented in the\nrelease notes.)</p>\n</aside>\n<p>If you'd like to be able to update your Django code occasionally with the\nlatest bug fixes and improvements, follow these instructions:</p>\n<ol class=\"arabic\">\n<li><p>Make sure that you have <a class=\"reference external\" href=\"https://git-scm.com/\">Git</a> installed and that you can run its commands\nfrom a shell. (Enter <code class=\"docutils literal notranslate\"><span class=\"pre\">git</span> <span class=\"pre\">help</span></code> at a shell prompt to test this.)</p></li>\n<li><p>Check out Django's main development branch like so:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-1-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\">$ </span>git<span class=\"w\"> </span>clone<span class=\"w\"> </span>https://github.com/django/django.git\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-1-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> git clone https://github.com/django/django.git\n</code></pre></div></div></div>\n<p>This will create a directory <code class=\"docutils literal notranslate\"><span class=\"pre\">django</span></code> in your current directory.</p>\n</li>\n<li><p>Make sure that the Python interpreter can load Django's code. The most\nconvenient way to do this is to use a virtual environment and <a class=\"reference external\" href=\"https://pip.pypa.io/\">pip</a>. The\n<a class=\"reference internal\" href=\"/ja/3.1/intro/contributing/\"><span class=\"doc\">contributing tutorial</span></a> walks through how to\ncreate a virtual environment.</p></li>\n<li><p>After setting up and activating the virtual environment, run the following\ncommand:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-2-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code><span class=\"gp\">$ </span>python<span class=\"w\"> </span>-m<span class=\"w\"> </span>pip<span class=\"w\"> </span>install<span class=\"w\"> </span>-e<span class=\"w\"> </span>django/\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-2-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> py -m pip install -e django\\\n</code></pre></div></div></div>\n<p>This will make Django's code importable, and will also make the\n<code class=\"docutils literal notranslate\"><span class=\"pre\">django-admin</span></code> utility command available. In other words, you're all\nset!</p>\n</li>\n</ol>\n<p>When you want to update your copy of the Django source code, run the command\n<code class=\"docutils literal notranslate\"><span class=\"pre\">git</span> <span class=\"pre\">pull</span></code> from within the <code class=\"docutils literal notranslate\"><span class=\"pre\">django</span></code> directory. When you do this, Git will\ndownload any changes.</p>\n</section>\n</section>","rootId":"how-to-install-django","toc":[{"title":"Python をインストールする","anchor":"install-python","children":[]},{"title":"Apache と mod_wsgi のインストール","anchor":"install-apache-and-mod-wsgi","children":[]},{"title":"データベースを動かす","anchor":"get-your-database-running","children":[]},{"title":"Install the Django code","anchor":"install-the-django-code","children":[{"title":"Installing an official release with pip","anchor":"installing-an-official-release-with-pip","children":[]},{"title":"Installing a distribution-specific package","anchor":"installing-a-distribution-specific-package","children":[]},{"title":"Installing the development version","anchor":"installing-the-development-version","children":[]}]}],"breadcrumbs":[{"docname":"topics/index","title":"Django を使う","url":"/ja/3.1/topics/"}],"prev":{"docname":"topics/index","title":"Django を使う","url":"/ja/3.1/topics/"},"next":{"docname":"topics/db/index","title":"モデルとデータベース","url":"/ja/3.1/topics/db/"},"formats":{"html":"/ja/3.1/topics/install/","markdown":"/ja/3.1/topics/install.md","json":"/ja/3.1/topics/install.json"},"source":"https://github.com/django/django/blob/stable/3.1.x/docs/topics/install.txt","official":"https://docs.djangoproject.com/ja/3.1/topics/install/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","zh-hans","fr","ja","id","pt-br","ko","es","el","pl"]}