アクセス
Webインターフェース: https://<SERVER_IP>
APIエンドポイント: https://<SERVER_IP>:5004
デフォルトの管理者認証情報:
- メールアドレス:
[email protected] - パスワード:
1234
最初のログイン後すぐに管理者の認証情報を変更してください。
自己署名証明書に関するご注意
このインストールでは自己署名 TLS 証明書を使用しています。
ブラウザに SSL の警告が表示されますが、これは想定内の動作です。
API の呼び出しに curlを使用する場合、証明書の検証を無視する必要があります:
curl -k https://<SERVER_IP>:5004
ザ -k このフラグは curl に TLS 証明書の検証をスキップさせます。
API トークンの取得例:
curl -k https://<SERVER_IP>:5004/api/v1/auth/login
-H "Content-Type: application/json"
-d '{"email":"[email protected]","password":"1234"}'
これにより、トークンを含む JSON レスポンスが返されます。
API トークンの取得例:
curl -k -i https://<SERVER_IP>:5004/api/v1/<VALID_ENDPOINT>
-H "Authorization: Bearer <TOKEN>"
本番環境では、自己署名証明書を信頼できる SSL 証明書(例:Let's Encrypt)に置き換えてください。
主要なファイルとディレクトリ
- インストール ディレクトリ:
/root/peppermint - 環境変数(DB 認証情報、シークレット、BASE_URL):
/root/peppermint/.env - Docker Compose 設定:
/root/peppermint/docker-compose.yml - PostgreSQL の永続データ(Docker ボリューム):
/var/lib/docker/volumes/pgdata/_data - Nginx リバースプロキシの設定:
/etc/nginx/conf.d/peppermint-client.conf&/etc/nginx/conf.d/peppermint-api.conf - TLS 証明書(自己署名または Let's Encrypt):
/etc/nginx/ssl/
ドメインを使った SSL の有効化
1. ドメインをサーバーのIPアドレスに向けてください。
2. ファイルを編集 /root/peppermint/.env ファイルでドメイン名を設定します: BASE_URL=https://your.domain.com
3. サービスを再作成する:
cd /root/peppermint/
docker compose up -d
4. Nginx の設定を編集して置き換える server_name <IP>; ドメイン(<your-domain>) は HTTP (ポート 80) と HTTPS (ポート 443) の両ブロックに適用されます:
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
5. Certbotをインストールします:
apt install -y certbot python3-certbot-nginx
6. 以下のコマンドを実行して、有効な Let's Encrypt 証明書を生成します:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. Nginx 設定(TLS セクション)の SSL パスを置き換えます:
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. Nginx を再起動して変更を反映します:
systemctl restart nginx
9. ブラウザを開き、次のURLにアクセスします: https://yourdomain.com