Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@Brutus

ociをインストールする

More than 1 year has passed since last update.

はじめに

本記事はociのインストール及びセットアップ方法について記載しています。
また、ociをインストールする際にエラーが発生した場合の対処方法(※)を記載しています。

(※)本記事の環境はMac、Pythonのバージョンは3.7.3

ociのインストール

クイックスタートを参照し、以下のコマンドを実行します。

# bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"

スクリプト実行後、対話的に進めると以下のメッセージが発生しました。

Traceback (most recent call last):
  File "/var/folders/kh/jt8fs9j53fs0scjl8hxv046w0000gn/T/oci_cli_install_tmp_XXXX.ByFbajUS", line 139, in create_virtualenv
    response = urlopen(VIRTUALENV_DOWNLOAD_URL)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 543, in _open
    '_open', req)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 503, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1360, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", line 1319, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)>
ERROR: Failed to download virtualenv package. Please check that your trusted certificates are up to date and include the certificates necessary to verify github.com

スクリプト実行時のダウンロード中にエラーが発生した原因は、スクリプトから呼び出されたPythonのプログラムによるHTTPSアクセスでの証明書検証が失敗しているためです。

よって、上記エラーが出力された場合は以下を実行することで対処できます。

  1. [Macintosh HD]> [アプリケーション]> [Python3.7]フォルダー(または使用しているpythonのバージョン)に移動し、[Install Certificates.command]ファイルをダブルクリックします。

スクリーンショット 2020-01-10 17.24.21.png

2.次に、「Update Shell Profile.command」をクリックします。

スクリーンショット 2020-01-10 17.32.48.png

3.上記実行後に再度スクリプトを実行します。対話的に入力が求められる箇所は入力を行い、スクリプト終了後、ociのインストールが行われています。

ociのセットアップ

本記事では、oci setup configコマンドを実行してセットアップを行います。
本コマンドを実行することで構成ファイルとAPI公開/秘密キーを作成します。

# /Users/<ユーザ名>/bin/oci setup config

公開キーの追加

Oracle Cloudのコンソールにログインし、認証を行うユーザに公開キーを追加します。
作成した公開キーの中身をコピーし、ペーストします。

コンソールの操作手順についてはRequired Keys and OCIDsを参照。

ociの動作確認

ociの動作確認を行います。
以下のコマンドはコンパートメント配下のリストを出力します。

# /Users/<ユーザ名>/bin/oci iam compartment list --all

既にconfigファイルが存在する場合は、エラーが発生するときがあります。

FileNotFoundError: [Errno 2] No such file or directory: '/Users/<ユーザ名>/.oci/oci_api_key.pem'

上記の様なエラーが出力された場合は、[DEFAULT]を認証を行うユーザに変更します。

おわりに

オブジェクトストレージに作成したバケット内に大量のオブジェクトがある場合は、ociを使用することでバケット内のオブジェクトの一括削除ができます。

Oracle Cloudを使用する場合は、ociを有効活用することで効率化が期待できます。

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Brutus
DevOpsとAIの二刀流を目指すLinuxエンジニア。Python、RaspberryPi、Linux、Docker、k8s、セキュリティ、Oracle Cloud、Terraform、Ansible等について発信しています。
infra-workshop
インフラ技術を勉強したい人たちのためのオンライン勉強会です

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?