勉強したことのメモ

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 サーバー

  関連記事

SELinuxとは? またサーバ構築作業の際に何故SELinuxを無効にする必要があるのか?

サーバ構築作業の際に大抵「SELinuxは無効化しましょう」という案内がある。そ ...

glibcライブラリの脆弱性とアップデート方法

レンタルしているサーバのアナウンスで「glibcライブラリの脆弱性」云々というの ...

VPSのCentOSにプロキシサーバーを立てる方法

借りているVPSにプロキシサーバーを立てたかった。環境と設置方法等を以下にメモ。 ...

AlmaLlinux8でswap領域を後から追加する方法

swap領域作成の際、だいぶ前にサーバに搭載されているメモリ量と同じ値(メモリ1 ...

フォルダにリンク制限をかける

imgというフォルダがあり、直接URLを叩いても 中身を見られないけど、同一サー ...