Sphinxの設定~Cloudflareでのデプロイ
前提
Pythonインストール
記載略(公式サイト参照)
pipコマンドを使用して作業を進めるために必要。
作業概要
pipenvのインストール、初期設定
sphinxのインストール、初期設定
requirement.txtの設定
その他設定(デザイン)
mdファイルを使用可にする
sphinxのデザイン変更(thema/css)
ローカル上でのdocument確認
Cloudflareでのデプロイ
作業詳細
以降の作業は、指定がない場合sphinxプロジェクトのルートディレクトリで行う。
pipenvのインストール、初期設定
以下のコマンドを実行する。
pip install pipenv
pipenv --python 3.XX
XXの箇所は自身がインストールしたPythonのバージョンを指定する。
上記操作で、pipfile、pipfile.lockが作成される。
Note
pipenvを使用して上記ファイルを作成することで、
複数環境でバージョンなどを統一することが可能となる。
sphinxのインストール、初期設定
以下のコマンドを実行する。
pipenv install sphinx
sphinx-quickstart
sphinx-quickstartの際にいくつか対話型のコマンドが出る。
build結果とsourceを分離する設定はyesとする。
requirement.txtの設定
cloudflareでのデプロイ時に必要となるファイル。
必要なライブラリを記載し、プロジェクトのルートディレクトリに配置する。
(記載例)
sphinx
myst_parser
sphinx_rtd_theme
その他設定
mdファイルを使用可にする
以下のコマンドを実行する。
pipenv install myst_parser
conf.pyのectensionsにmyst_parserを追加する。
extensions = ["myst_parser"]
sphinxのデザイン変更(thema/css)
以下のコマンドを実行する。
pipenv install sphinx_rtd_theme
source/conf.py以下のように修正する。
html_theme = 'sphinx_rtd_theme'
ローカル上でのdocument確認
以下のコマンドを実行する
make html
このコマンドはmake.bat(バッチファイル)を、htmlという引数を付けて実行している。 用は、html形式のドキュメントに変換してビルド(見られる状態に)してね~っていう命令。 ということは、別形式(例えばPDF)とかもある…らしいけどこっちはまだ使ったことない。
Cloudflareでのデプロイ
下記のサイトを参考に、設定を行う。
Cloudflare Pages上でSphinxサイトを自動デプロイする
プロダクション ブランチ:main
プリセット:なし
ビルド コマンド:make html
ビルド出力ディレクトリ:build/html
環境変数と値:PYTHON_VERSION...3.13(使ってるPythonのバージョン)
プロジェクトのルートディレクトリで、以下のコマンドを実行することでPythonのバージョンが確認可能。
python --version
Attention
上記ページでは、requirement.txtが必要であるとの記載はなく、
pipfileのみでデプロイ可能とのことだが、うまくいかなかった。
他の環境との同期のためにpipfileは残すが、上記の点は留意すること。