勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

AlmaLinux8&PHP8系の環境にComposerをインストールする方法

  PHP サーバー

AlmaLinux8&PHP8系の環境にComposerをインストールしたい。それとは別に「Do not run Composer as root/super user!」と「GitHub API limit (60 calls/hr) is exhausted」メッセージが表示された際の対応方法をメモ。

 

公式サイト

https://getcomposer.org/

 

Composerのインストール

サーバにSSH接続し以下の通り進める。

#(必要に応じて)wgetのインストール
sudo dnf -y install wget

#composerのインストーラーをダウンロード
wget https://getcomposer.org/installer -O composer-installer.php

#composerのインストール
composer-installer.php --filename=composer --install-dir=/usr/local/bin

#composerのアップデート
composer self-update

#バージョン確認
composer --version

#バージョンが表示される
Composer version 2.7.1

 

「Do not run Composer as root/super user!」について

Composerを用いて何らかのライブラリをインストールしようとすると以下のようなメッセージが表示された。

Do not run Composer as root/super user! See https://getcomposer.org/root for details
Continue as root/super user [yes]?

https://getcomposer.org/root」を見に行くとスーパーユーザ(root等)でComposerを実行するのはダメ的な案内があった。

そのため以下コマンドで適当なユーザに変更してから実行すること(FTPで接続する用のユーザが無難?)。

su 【ユーザ名】

尚、「Continue as root/super user [yes]?」に対して「yes」と入力しエンターを押すとそのままComposerが実行される。

 

GitHub API limit (60 calls/hr) is exhausted」について

Composerを用いて何らかのライブラリをインストールしようとすると1つ目は問題無く実行できたが、2つ目で以下のようなメッセージが表示された。

GitHub API limit (60 calls/hr) is exhausted, could not fetch https://api.github.com/repos/xxxxxxxxxxxxxx. Create a GitHub OAuth token to go over the API rate limit. You can also wait until 2024-xx-xx 00:19:57 for the rate limit to reset.

When working with _public_ GitHub repositories only, head here to retrieve a token:
https://github.com/settings/tokens/new?scopes=&description=Composer+on+i-53100000541078+2024-xx-xx+2330
This token will have read-only permission for public information only.
When you need to access _private_ GitHub repositories as well, go to:
https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+i-53100000541078+2024-xx-xx+2330
Note that such tokens have broad read/write permissions on your behalf, even if not needed by Composer.
Tokens will be stored in plain text in "/root/.config/composer/auth.json" for future use by Composer.
For additional information, check https://getcomposer.org/doc/articles/authentication-for-private-packages.md#github-oauth
Token (hidden):

こちらのサイトによると「composer install / update」時に裏側でGitHubのAPIを呼び出しているようで、その際にリクエスト上限を超えたためメッセージが表示されたっぽい。

対応方法としてGitHubでトークンを発行し「Token (hidden):」に対して当該トークンをペーストしてエンターキーを押すことで解決する。

GitHubのトークン発行方法についてはメッセージ内のURL(今回の場合だと https://github.com/settings/tokens/new?scopes=&description=Composer+on+i-53100000541078+2024-xx-xx+2330 )にアクセスし、以下赤枠部分にチェックを入れて「Generate token」ボタンをクリック。

トークンが正常に発行されると以下のようなページに遷移し、赤枠部分にトークンが表示されるのでコピーし、SSHクライアントソフト上にペースト→エンターキーで進められる筈。

 - PHP サーバー

  関連記事

お手軽に負荷分散(DNSラウンドロビン)を行う方法

サーバ設定か何かの記事を見ていて「DNSラウンドロビン」という聞いたことのない言 ...

composerでライブラリのインストールとインストール時のエラー対応方法

composerでライブラリをインストールする際に「The following ...

CentOS7系からAlmaLinux8系に移行(サーバも移行)した際に詰まった点と変更点

前日CentOS7系からAlmaLinux8系に移行した(サーバはどちらも同じV ...

cronの時間設定部分が全てアスタリスク

サイトを引き継ぐことがあり、そのサーバの設定資料を確認するとcronの設定で日時 ...

htmlファイル内でPHPを動かす(AddHandler)

サイトを引き継ぐことがあり、ソースを確認していると拡張子はhtmlなのにPHPの ...