share facebook facebook2 twitter menu hatena pocket slack

2013.01.10 THU

“AWS SDK for PHP Version 2″をインストールしてみた(Composer)

鈴木 宏康

WRITTEN BY鈴木 宏康

AWS SDK for PHP Version 2がリリースされてたので、インストールしてみました。

なんか、Guzzleとか、Symfony2とか、Composerとか、面白そうなキーワードが所々に見受けられます。

そしてComposer経由のインストールがオススメ(recommended way)ということなので、Composerデビューしてみました。

Installing via Composer | aws-sdk-php/README.md at master · aws/aws-sdk-php

そもそもComposerについては、PHPの外部ライブラリの管理にComposerを使う | Ryuzee.comの記事が参考になります。

1. PHPの準備とディレクトリの作成
下記コマンドを実行するだけです。

# yum -y install php-cli
# mkdir /opt/aws/php
# cd /opt/aws/php/

2. AWS SDKの依存関係を設定
下記のようにcomposer.jsonを用意(に追記)します。

# cat composer.json 
{
"require": {
"aws/aws-sdk-php": "2.*"
}
}

3. Composerのダウンロードとインストール
下記コマンドでComposerのダウンロード&インストールを行います。

# curl -s "http://getcomposer.org/installer" | php
#!/usr/bin/env php
All settings correct for using Composer
Downloading...

Composer successfully installed to: /opt/aws/php/composer.phar
Use it: php composer.phar

4. AWS SDKと依存パッケージのインストール
下記コマンドで上記で作成したcomposer.jsonに従ってインストールします。

# php composer.phar install
Loading composer repositories with package information
Installing dependencies
- Installing symfony/event-dispatcher (v2.1.3)

- Installing guzzle/guzzle (v3.0.5)

- Installing aws/aws-sdk-php (2.0.1)

symfony/event-dispatcher suggests installing symfony/dependency-injection (2.1.*)
symfony/event-dispatcher suggests installing symfony/http-kernel (2.1.*)
Writing lock file
Generating autoload files

5. インストールされたものを確認
Composerはもちろんのこと、上述されたGuzzleやSymfony2に関するものもインストールされています。

# tree -L 3
.
├── composer.json
├── composer.lock
├── composer.phar
└── vendor
├── autoload.php
├── aws
│ └── aws-sdk-php
├── composer
│ ├── ClassLoader.php
│ ├── autoload_classmap.php
│ ├── autoload_namespaces.php
│ ├── autoload_real.php
│ └── installed.json
├── guzzle
│ └── guzzle
└── symfony
└── event-dispatcher

8 directories, 9 files

まだ、S3、Glacier、DynamoDB、CloudFront、しか使えないのだろうか・・・

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。