Sphinx
Sphinx ↗ は、ドキュメントを簡単に作成するためのツールで、もともとはPythonのドキュメントの公開のために作られました。そのシンプルさと使いやすさで知られています。
このガイドでは、新しいSphinxプロジェクトを作成し、Cloudflare Pagesを使用してデプロイします。
-
Python 3 - SphinxはPythonに基づいているため、Pythonがインストールされている必要があります。
-
pip ↗ - PythonパッケージをインストールするためのPyPA推奨ツール
-
pipenv ↗ - プロジェクトのために自動的に仮想環境を作成し管理します。
Python 3.7の最新バージョンは3.7.11です:
インストールガイダンスについては、公式のPythonドキュメントを参照してください:
Python 3.7をインストールする前に以前のバージョンのPythonがインストールされていた場合、他のグローバルパッケージがPipenvのインストールや、グローバルパッケージに依存する他のPythonプロジェクトの手順に干渉する可能性があります。
Pipenv ↗は、仮想環境の管理を簡単にするPythonベースのパッケージマネージャーです。このガイドでは、Sphinxサイトのデプロイを完了するためにPipenvの事前経験や知識は必要ありません。Cloudflare PagesはPipenvの使用をネイティブにサポートしており、デフォルトで最新バージョンがインストールされています。
Pipenvをインストールする最も簡単な方法は、次のコマンドを実行することです:
pip install --user pipenvこのコマンドは、Pipenvをユーザーレベルのディレクトリにインストールし、ターミナルからアクセスできるようにします。次のコマンドを実行して、期待される出力を確認できます:
pipenv --versionpipenv, version 2021.5.29ターミナルから、次のコマンドを実行して新しいディレクトリを作成し、そこに移動します:
mkdir my-wonderful-new-sphinx-projectcd my-wonderful-new-sphinx-projectPipenvを使用すると、仮想環境に関連付けるPythonのバージョンを指定できます。このガイドの目的のために、Sphinxプロジェクトの仮想環境はPython 3.7を使用する必要があります。
次のコマンドを使用します:
pipenv --python 3.7次の出力が表示されるはずです:
Creating a virtualenv for this project...Pipfile: /home/ubuntu/my-wonderful-new-sphinx-project/PipfileUsing /usr/bin/python3.7m (3.7.11) to create virtualenv...⠸ Creating virtual environment...created virtual environment CPython3.7.11.final.0-64 in 1598ms creator CPython3Posix(dest=/home/ubuntu/.local/share/virtualenvs/my-wonderful-new-sphinx-project-Y2HfWoOr, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/ubuntu/.local/share/virtualenv) added seed packages: pip==21.1.3, setuptools==57.1.0, wheel==0.36.2 activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
✔ Successfully created virtual environment!Virtualenv location: /home/ubuntu/.local/share/virtualenvs/my-wonderful-new-sphinx-project-Y2HfWoOrCreating a Pipfile for this project...ディレクトリの内容をリストします:
lsPipfileSphinxをインストールする前に、プロジェクトを格納するディレクトリを作成します。
ターミナルから、次のコマンドを実行してSphinxをインストールします:
pipenv install sphinx次のような出力が表示されるはずです:
Installing sphinx...Adding sphinx to Pipfile's [packages]...✔ Installation SucceededPipfile.lock not found, creating...Locking [dev-packages] dependencies...Locking [packages] dependencies...Building requirements...Resolving dependencies...✔ Success!Updated Pipfile.lock (763aa3)!Installing dependencies from Pipfile.lock (763aa3)... 🐍 ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/0 — 00:00:00To activate this project's virtualenv, run pipenv shell.Alternatively, run a command inside the virtualenv with pipenv run.これにより、Pipenvによって管理される新しい仮想環境にSphinxがインストールされます。次のようなディレクトリ構造が表示されるはずです:
my-wonderful-new-sphinx-project|--Pipfile|--Pipfile.lockSphinxがインストールされたので、quickstartコマンドを実行してテンプレートプロジェクトを作成できます。このコマンドは、前のステップで作成したPipenv環境内でのみ機能します。その環境に入るには、ターミナルから次のコマンドを実行します:
pipenv shellLaunching subshell in virtual environment...ubuntu@sphinx-demo:~/my-wonderful-new-sphinx-project$ . /home/ubuntu/.local/share/virtualenvs/my-wonderful-new-sphinx-project-Y2HfWoOr/bin/activate次のコマンドを実行します:
sphinx-quickstartいくつかの質問が表示されるので、次のように回答してください:
Separate source and build directories (y/n) [n]: YProject name: <あなたのプロジェクト名>Author name(s): <あなたの名前>Project release []: <ここでデフォルトを受け入れるか、バージョンを提供できます>Project language [en]: <ここでenを受け入れるか、地域の言語コードを提供できます>これにより、アクティブなディレクトリに4つの新しいファイルが作成されます:source/conf.py、index.rst、Makefile、およびmake.bat:
my-wonderful-new-sphinx-project|--Pipfile|--Pipfile.lock|--source|----_static|----_templates|----conf.py|----index.rst|--Makefile|--make.batこれで、Cloudflare Pagesにサイトをデプロイするために必要なすべてが揃いました。Sphinxを使用してドキュメントを作成する方法については、公式のSphinxドキュメント ↗を参照してください。
All of the framework guides assume you already have a fundamental understanding of Git ↗. If you are new to Git, refer to this summarized Git handbook ↗ on how to set up Git on your local machine.
If you clone with SSH, you must generate SSH keys ↗ on each computer you use to push or pull from GitHub.
Refer to the GitHub documentation ↗ and Git documentation ↗ for more information.
pipenvシェルセッション内ではない別のターミナルウィンドウで、SSHキーによる認証が機能していることを確認します:
eval "$(ssh-agent)"ssh-add -T ~/.ssh/id_rsa.pubssh -T git@github.comThe authenticity of host 'github.com (140.82.113.4)' can't be established.RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.Are you sure you want to continue connecting (yes/no/[fingerprint])? yesWarning: Permanently added 'github.com,140.82.113.4' (RSA) to the list of known hosts.Hi yourgithubusername! You've successfully authenticated, but GitHub does not provide shell access.新しいGitHubリポジトリを作成するには、repo.new ↗にアクセスします。リポジトリが設定されたら、ターミナルで次のコマンドを実行してアプリケーションをGitHubにプッシュします:
git initgit config user.name "あなたの名前"git config user.email "username@domain.com"git remote add origin git@github.com:yourgithubusername/githubrepo.gitgit add .git commit -m "初回コミット"git branch -M maingit push -u origin mainサイトをPagesにデプロイするには:
- Cloudflareダッシュボード ↗にログインし、アカウントを選択します。
- アカウントホームで、Workers & Pages > アプリケーションを作成 > Pages > Gitに接続を選択します。
- 作成した新しいGitHubリポジトリを選択し、ビルドとデプロイの設定セクションで、次の情報を提供します:
| 設定オプション | 値 |
|---|---|
| プロダクションブランチ | main |
| ビルドコマンド | make html |
| ビルドディレクトリ | build/html |
設定の下に、PYTHON_VERSIONを指定するための環境変数を設定することを忘れないでください。
例えば:
| 変数名 | 値 |
|---|---|
| PYTHON_VERSION | 3.7 |
サイトの設定が完了したら、最初のデプロイを開始できます。Cloudflare PagesがPipenv、プロジェクトの依存関係をインストールし、デプロイ前にサイトをビルドするのを確認できます。
サイトをデプロイした後、*.pages.devのプロジェクト用のユニークなサブドメインが提供されます。Sphinxサイトに新しいコードをコミットするたびに、Cloudflare Pagesは自動的にプロジェクトを再ビルドし、デプロイします。
新しいプルリクエストでプレビューのデプロイにもアクセスできるようになり、変更が本番環境にデプロイされる前にサイトにどのように表示されるかをプレビューできます。
By completing this guide, you have successfully deployed your Sphinx site to Cloudflare Pages. To get started with other frameworks, refer to the list of Framework guides.