LoginSignup
50
29

More than 3 years have passed since last update.

ubuntuでのComposerインストール方法を簡潔に

Posted at

背景

インターンで案件のレビューをすることになったが、PHPのソースレビューでコーディング規約とソースを見比べながら細かな部分を見つけ出すのはかなり骨の折れる作業だと思った。
そんなとき、自分が受けたソースレビューで、コーディング規約違反でCodeSnifferでエラーが出ていますとコメントをいただいたことを思い出した。
CodeSnifferを入れればソースがPSR-2に準拠した書き方なのかが自動でわかるのか!と感動し、VSCodeに導入することにした。
今回はその前提のComposerインストールまでのお話です。
解説サイトがたくさんヒットしたのですが、インストール手順がどれもバラバラで情報が散らかっている感じだったので、簡潔にまとめてしまおうと投稿しました。

環境

  • Ubuntu 18.04LTS

1. 依存関係のインストール

まずはお約束

$ sudo apt update -y

続いて依存関係のインストール

$ sudo apt install curl php-cli php-mbstring git unzip

依存関係を簡単に説明すると、
- curl: php-cliをインストールするのに必要
- php-cli: Composerのインストールと実行に必要
- php-mbstring: 使用するライブラリに機能を提供
- git: 言わずもがな。ここではComposerの依存関係をダウンロードするのに必要
- unzip: 圧縮されたパッケージの解凍に必要

いくつか既に入っているライブラリもあると思うので、全部打つ必要はないかと。
とはいえ、確認がめんどうだったので私はそのまま実行しましたw

2. Composerのインストール

依存関係がインストールできたところで、Composer本体のインストールです。
このインストール方法が一番記事によってやり方が違うと感じたのは私だけでしょうか?
今回は王道中の王道、公式のコマンドからインストールします。

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"

3. どこからでもComposerを実行できるように

最後の仕上げです。Composerをどの階層からでも実行できるように設定します。

$ # まずはcomposer.pharの確認
$ ls ./
composer.phar

$ # 続いてPHP 本体(ランタイム)の保存先ディレクトリを確認
$ dirname $(which php)
/usr/bin/php

$ # PHP と同じディレクトリに拡張子なしで移動し、実行権限を与える
$ mv ./composer.phar $(dirname $(which php))/composer && chmod +x "$_"

$ # 動作確認
$ composer --version

ほとんどこちらから引用させていただいております。ありがとうございます。
逆引き!Composer コマンド・ライン一覧(と基礎知識)

以上です。
私は12の手順でどの記事を参考にすればよいかわからず、迷ってしまいました。
これからComposerをインストールする方の助けになれば幸いです。

参考文献

50
29
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
50
29