バックグラウンド プロセスに iron.io とそのワーカー タスクを使用しています。私のコードは次のようにかなり単純です。
<?php
require 'vendor/autoload.php';
$uri = "my_connection_string";
$client = new MongoClient($uri);
:
:
composer.json は次のようなものです:
{
"require": {
"iron-io/iron_worker": "2.0.4",
"wp-cli/php-cli-tools": "~0.10.3"
}
}
次に、最初にすべての依存関係をインストールします。
docker run --rm -it -v "$PWD":/worker -w /worker iron/php:dev composer install
コードを圧縮し、
zip -r worker.zip .
それをアップロードし、
iron --env dev worker upload --name task-name -zip ./worker.zip iron/php:dev php ./worker.php
次に、このエラー出力。
PHP Fatal error: Class 'MongoClient' not found in /mnt/task/worker.php on line xxx
も試しましたがMongoDB\Driver\Manager
、MongoDB\Driver\Client
同じエラーが発生します。を実行しようとするとphp -m
、次のように表示されます。
[PHP Modules]
Core
curl
date
ereg
fileinfo
filter
hash
json
libxml
mbstring
mysqlnd
pcre
readline
Reflection
session
SimpleXML
SPL
standard
tokenizer
xmlwriter
[Zend Modules]
インストールされていると言われていますが、MongoDB拡張機能もインストールされていないようです。 http://dev.iron.io/worker/languages/php/
何か不足していますか?Iron Worker を使用して PHP で MongoDB ドライバーを使用するにはどうすればよいですか?