# インストール プロジェクトのインストール方法について記載します。 ## 必要な環境 - 要件1 - 要件2 - 要件3 ## インストール手順 ### ステップ1: 事前準備 事前に必要な準備について記載します。 ### ステップ2: インストール 1. 手順1を実行 2. 手順2を実行 3. 手順3を実行 ```bash # サンプルコマンド echo "Hello World" ``` ### ステップ3: 設定 設定ファイルの編集や環境変数の設定について記載します。 ## 確認 インストールが正常に完了したかを確認する方法を記載します。 ## トラブルシューティング よくある問題とその解決方法を記載します。 ### 問題1 問題の説明と解決方法 ### 問題2 問題の説明と解決方法 | 項目 | 内容 | | ------------ | ------------------------------- | | OS | Linux/macOS/Windows(WSL2推奨) | | 言語 | Python 3.11以上、Node.js 18以上 | | データベース | sqlite3/PostgreSQL | | その他 | git, AWS CLI, Terraform | ## 推奨環境 | 項目 | 内容 | | --------------------- | -------------------------------------------------------------------------------------------------------------------------- | | pythonパッケージ管理 | uv | | Node.jsバージョン管理 | nvm | | devcontainer | VSCode(Cursor)のdevcontainerを使用すると必須、推奨環境のツール一式と便利なVSCode拡張機能が入ったdebian環境が構築されます。 | ## 環境構築手順 ### 1. 前提ツールのインストール(devcontainerを使用しない場合) #### Python 3.11以上のインストール(uvの使用を推奨) **Ubuntu/Debian:** ```bash curl -LsSf https://astral.sh/uv/install.sh | sh # curlが入っていない場合 sudo apt update && sudo apt install curl -y # python3.11をインストール uv python install 3.11 ``` **macOS:** ```bash brew install uv # または以下でも可能 curl -LsSf https://astral.sh/uv/install.sh | sh # python3.11をインストール uv python install 3.11 ``` **すでに何らかのpythonバージョンとpipが入っている場合、PyPiパッケージとして以下でインストールすることも可能です。** ```bash pip install uv ``` #### Node.js 18以上のインストール(NVMの使用を推奨) **Ubuntu/Debian:** ```bash curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm nvm install 22 nvm use 22 ``` **macOS:** ```bash curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm nvm install 22 nvm use 22 ``` #### gitのインストール(インストール済みの場合はスキップ) **Ubuntu/Debian:** ```bash sudo apt install -y git ``` **macOS:** ```bash brew install git ``` ### 2. リポジトリのクローン ```bash git clone https://github.com/leadingtechdev/tenshoku-agent.git cd tenshoku-agent ``` ### 3. パッケージのインストール Pythonの仮想環境を作成し、必要なパッケージをインストールします: ```bash # 仮想環境の作成と依存関係のインストール uv sync # pre-commitフックのインストール(コードの品質を自動チェック) uvx pre-commit install # コマンドのたびにuvxをつけるのが面倒なら仮想環境に入ってください . .venv/bin/activate ``` Node.jsのパッケージもインストールします: ```bash npm install ``` また、Node.jsのビルドを行います: ```bash # 各アプリのCSSとJSをwebpackします npm run build ``` ### 4. 環境設定 `.env.example`ファイルをコピーして`.env`ファイルを作成します: ```bash cp .env.example .env ``` 必要に応じて`.env`ファイルを編集し、環境変数を設定します。 環境変数に設定する値は`1password`に保存されていますので、必要な値を取得してください。 **環境変数をセット** ```bash source .env ``` ### 5. データベースのセットアップ まず、マイグレーションファイルを作成し、初期ユーザーの設定をします: ```bash # データベースのセットアップスクリプトを実行 ./setup_dev.sh ``` ### 6. Terraformのインストール tfenv(Terraformバージョン管理ツール)を使用してTerraformをインストールします: ```bash # 既存のtfenvがあれば削除 rm -rf ~/.tfenv # tfenvをインストール git clone --depth=1 https://github.com/tfutils/tfenv.git ~/.tfenv # パスを通す echo 'export PATH=$PATH:$HOME/.tfenv/bin' >> ~/.bashrc source ~/.bashrc # Terraformのインストールとバージョン指定 tfenv install latest tfenv use latest ``` ### 7. AWS CLIのセットアップ AWS CLIをインストールして設定します: **Ubuntu/Debian:** ```bash curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install ``` **macOS:** ```bash curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" sudo installer -pkg AWSCLIV2.pkg -target / ``` AWSの認証情報を設定します: ```bash aws configure # AWS Access Key ID、Secret Access Key、リージョン、出力形式を入力 ``` ### 8. 開発サーバーの起動 ```bash python manage.py runserver ``` これで、ブラウザで http://localhost:8000 にアクセスすると、tenshoku-agentが表示されます。 管理画面は http://localhost:8000/admin/ でアクセスできます。 ## トラブルシューティング ### 一般的なエラー解決策 1. **依存関係エラー**:新しい依存関係が追加された場合は、`pip install -r requirements.txt` を再実行してください。 2. **データベース関連エラー**:データベーススキーマに問題がある場合は以下を試してください: ```bash python manage.py makemigrations python manage.py migrate ``` 3. **環境変数エラー**:環境変数が正しく設定されているか確認してください: ```bash source .env # または export $(cat .env | xargs) ``` 4. **Node.jsビルドエラー**:フロントエンド関連のエラーが発生した場合: ```bash npm clean-install npm run build ```