環境変数
.env ファイルを使って、Daki Hosting でアプリケーションの環境変数を設定する方法。
環境変数を使うと、Discord ボットのトークンや API キーなどの設定値を、ソースコードに直接書かずにアプリケーションへ渡せます。Daki Hosting では、Portal のファイルマネージャーまたは SFTP を使って、サーバー上に .env ファイル を直接作成する方法をおすすめします。
このページで学べること
- 環境変数とは何か、なぜ重要か
- サーバー上に
.envファイルを作成する方法 - Node.js と Python で
.envの値を読み込む方法 - シークレットを安全に保つためのベストプラクティス
環境変数とは?
環境変数は、実行中のアプリケーションが自身の環境から読み取れるキーと値のペアです。次の用途に使われる標準的な方法です:
- 機密性の高い値(トークン、API キー、パスワード)をコードと分けて保存する
- ソースファイルを変更したり再デプロイしたりせずに、設定を変更する
- シークレットをバージョン管理にコミットしないようにする
.env ファイルの作成
Daki で環境変数を管理する最も簡単で確実な方法は、サーバー上に .env ファイルを作成することです。方法は 2 つあります:
方法 1: ファイルマネージャーを使う(簡単な編集)
- Portal(portal.daki.cc)でサーバーを開きます。
- Files タブを開きます。
- New File をクリックし、
.envと名前を付けます。 - ファイルをクリックして Web エディターで開き、変数を追加します:
.env
BOT_TOKEN=your_discord_bot_token_here PORT=3000 DATABASE_URL=your_db_connection_string - Save をクリックします。
- サーバーを再起動します。
方法 2: SFTP を使う(初期セットアップにおすすめ)
SFTP(認証情報は Settings タブにあります)でサーバーに接続し、ローカルマシンから .env ファイルを直接アップロードします。SFTP の設定方法は ファイルマネージャー を参照してください。
.env ファイルを公開の Git リポジトリに絶対にコミットしないでください。シークレットが誤って公開されないように、.env を .gitignore ファイルに追加してください。
アプリケーションで .env の値を読み込む
アプリケーションは .env ファイルを自動では読み込みません。環境に読み込むためのライブラリが必要です。
パッケージをインストールします(package.json に依存関係として追加します):
JSON
{
"dependencies": {
"dotenv": "^16.0.0"
}
}エントリーファイルの一番上で読み込みます:
JavaScript
require('dotenv').config();
const token = process.env.BOT_TOKEN;
const port = process.env.PORT || 3000;python-dotenv を requirements.txt に追加します:
Shell
python-dotenvエントリーファイルの先頭で読み込みます:
Python
from dotenv import load_dotenv
import os
load_dotenv()
token = os.environ.get("BOT_TOKEN")
port = int(os.environ.get("PORT", 3000)).env ファイルの形式
.env ファイルの各行は KEY=VALUE の形式に従います:
.env
# Comments start with a hash
BOT_TOKEN=your_token_here
API_KEY=some_api_key
DB_HOST=localhost
DB_PORT=5432
DEBUG=false- キーは通常、大文字とアンダースコアで書きます。
- 値は引用符で囲む必要はありませんが、引用符も使えます。
#で始まる行はコメントで、無視されます。
ベストプラクティス
- トークンやシークレットをソースコードに直接書かないでください。特にコードが GitHub にある場合は注意してください。
.envを.gitignoreに追加して、誤ってコミットされないようにします。.envファイルはローカルではなくサーバー上で作成してください。または、バージョン管理から除外したローカルの.envを SFTP でアップロードしてください。.envファイルの作成・変更後は、サーバーを再起動してください。- 設定を見ただけで内容が分かる、分かりやすいキー名を使ってください。
次のステップ
- 起動設定 — インストールコマンド、起動コマンド、Docker イメージ を設定します。
- Discord.js ボットをデプロイ — トークンの設定を含む、完全なデプロイの手順。
- Python ボットをデプロイ — トークンの設定を含む、完全なデプロイの手順。