2016-04-24 145 views
0

我試圖建立動態縮略服務thumbor和支持S3存儲,我需要設置這個社區供電pip library for awsAWS沒有憑據錯誤

它的工作以及對我的當地環境,但是當我想其託管在我們的服務器之一,我得到NoCredentialsError。我假設這是由於botocore的不同版本(最新的一個和一個由pip庫安裝的)。這裏是錯誤日誌:

File "/usr/local/lib/python2.7/dist-packages/botocore/session.py", line 774, in get_component 
    # client config from the session 
    File "/usr/local/lib/python2.7/dist-packages/botocore/session.py", line 174, in <lambda> 
    self._components.lazy_register_component(
    File "/usr/local/lib/python2.7/dist-packages/botocore/session.py", line 453, in get_data 
    - agent_version is the value of the `user_agent_version` 
    File "/usr/local/lib/python2.7/dist-packages/botocore/loaders.py", line 119, in _wrapper 
    data = func(self, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/loaders.py", line 364, in load_data 
DataNotFoundError: Unable to load data for: _endpoints 







2016-04-24 12:14:34 tornado.application:ERROR Future exception was never retrieved: Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/tornado/gen.py", line 230, in wrapper 
    yielded = next(result) 
    File "/usr/local/lib/python2.7/dist-packages/thumbor/handlers/imaging.py", line 31, in check_image 
    exists = yield gen.maybe_future(self.context.modules.storage.exists(kw['image'][:self.context.config.MAX_ID_LENGTH])) 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 455, in wrapper 
    future.result() 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 215, in result 
    raise_exc_info(self._exc_info) 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 443, in wrapper 
    result = f(*args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/tc_aws/aws/storage.py", line 107, in exists 
    self.storage.get(file_abspath, callback=return_data) 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 455, in wrapper 
    future.result() 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 215, in result 
    raise_exc_info(self._exc_info) 
    File "/usr/local/lib/python2.7/dist-packages/tornado/concurrent.py", line 443, in wrapper 
    result = f(*args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/tc_aws/aws/bucket.py", line 44, in get 
    Key=self._clean_key(path), 
    File "/usr/local/lib/python2.7/dist-packages/tornado_botocore/base.py", line 97, in call 
    return self._make_api_call(operation_name=self.operation, api_params=kwargs, callback=callback) 
    File "/usr/local/lib/python2.7/dist-packages/tornado_botocore/base.py", line 60, in _make_api_call 
    operation_model=operation_model, request_dict=request_dict, callback=callback) 
    File "/usr/local/lib/python2.7/dist-packages/tornado_botocore/base.py", line 54, in _make_request 
    request_dict=request_dict, operation_model=operation_model, callback=callback) 
    File "/usr/local/lib/python2.7/dist-packages/tornado_botocore/base.py", line 32, in _send_request 
    request = self.endpoint.create_request(request_dict, operation_model) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/endpoint.py", line 126, in create_request 
    operation_name=operation_model.name) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/hooks.py", line 226, in emit 
    return self._emit(event_name, kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/hooks.py", line 209, in _emit 
    response = handler(**kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/signers.py", line 90, in handler 
    return self.sign(operation_name, request) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/signers.py", line 124, in sign 
    signer.add_auth(request=request) 
    File "/usr/local/lib/python2.7/dist-packages/botocore/auth.py", line 626, in add_auth 
    raise NoCredentialsError 
NoCredentialsError: Unable to locate credentials 

它可以固定正確的順序,我安裝庫?由於該pip庫刪除了現有的較新版本的botocore並安裝了舊版本。

編輯:

我正在與主管的過程,似乎過程斜面訪問AWS憑據

編輯2:

這個問題得到了與上司的正確配置解決。由主管開始爲進程的用戶沒有訪問配置文件

+0

它看起來像你的服務器沒有做憑據正確配置。你如何在你的服務器和你的開發機器上設置你的憑證?關於這些版本,它看起來像tc_aws對botocore 1.2.0有很大的依賴性,所以如果升級超過這一點,它可能無法正常工作。 –

+0

是啊tc_aws降級botocore到1.2.0。使用當前的配置,我嘗試從命令行連接到s3桶與boto3,它的工作原理。我不知道安裝這些庫的順序是什麼。 – pratsJ

+0

@JordonPhillips我想我找到了問題。我正在與主管的過程,然後再處理着訪問AWS憑證 – pratsJ

回答

0

這個問題得到了與上司的正確配置解決。主管啓動的子流程的用戶無法訪問aws配置文件。所以它是與當地環境合作或獨立創建過程,但不與主管合作。