Nodachisoft Nodachi Sword Icon
  
@あまじ✎ 2020年10月16日に更新

Chocolatey の使い方とインストール手順

Chocolatey は Windows で動くパッケージ管理ソフトです。

このページでは下の内容を書いてます。

  • Chocolatey 公式Web からインストールする手順。
  • 基本的なコマンド使用例。
  • packages.config ファイルでパッケージをまとめてインストール

似たようなパッケージ管理ソフトで winget や scoop などがあります。他のソフトとどっちが良いか、それぞれどんな特徴があるかは別のページ「Nodachisoft - winget、chocolatey、scoop の比較と開発環境の構築自動化」でまとめてますので、もし宜しければどーぞ。

インストール手順

必要なマシンスペックとか

Chocolatey を使う時に必要な環境を公式のインストールページ、公式Wiki から抜粋しています。まずは下を満たすPCを準備しましょー。

  • Windows7 以降もしくは Windows 2003 以降
  • Windows PowerShell バージョン2 以降(TLS1.2でネット使うから)
  • .NET Framework バージョン 4.x 以降
  • 標準のコマンドライン機能に 15 MB が必要
  • 標準のGUI機能に別途 50~100MB が必要
  • ディスク空きサイズは推奨は 1 GB くらい。
  • メモリは最低 2GB、推奨は 8GB くらい。

公式Wiki に元ネタ情報があるので最新版はコチラを確認してください!

あと、ディスク領域について Wiki に注意が書いてありましたが、Chocolatey でソフトを入れるときは圧縮したインストーラと展開後のインストーラとインストールした先の3つの領域が必要なので、でっかいソフトをインストールするときは注意が必要とのこと。

Chocolatey のインストール手順

  1. Chocolatey 公式の Web ページのインストールページにアクセスします。

※ページ内の Step.1 は任意。Chocolatey からのお知らせメルマガとか欲しければ入れましょう。

  1. ページ内の Step.2 へ。

組織ではなく個人利用なので、「Individual(個人)」の手順ですすめます。最初から Individual のタブが選択されているのでそのまま。

下のスクリーンショットは公式ページの Step2 をとったものです。

  1. Individual の手順 1 に管理者権限でシェル実行が必要

※管理者権限でコマンドプロンプトを起動する方法は、別の記事Nodachisoft - 管理者モードでコマンドプロンプトを起動するいくつかの方法でまとめたので良ければご参考にどうぞー。ショートカットとか使って簡単に管理者権限で起動する方法を知らなかったのでそれも書いてます。

コマンドプロンプトからでもPowerShellからでもOKです。

Windowsキー+Rで「ファイル名を指定して実行」ウィンドウを表示します。

名前(O): に powershell と入力してCtrl+Shift+Enter を入力。これでPowerShell が管理者権限で起動します。

powershell_with_admin

※タイトルに「管理者:」がついてて管理者権限で起動したことが確認できます。

  1. powershell 上で実行するコマンドをコピペ実行

公式ページのインストール用コマンドをコピーします。 下のボタンを押すか、その左側のテキストボックスの中身をコピーします。

chocolatey_install_2

コピーしたあと、管理者権限で起動した powershell の上で右クリックするとコピーした内容を貼り付けできます。

chocolatey_install_3

貼り付けてEnterキーでで実行しましょー。

実行するとインターネット経由で最新版をダウンロードしてインストールしてくれます。

chocolatey_install_3

ログの中で "Chocolatey (choco.exe) is now ready." と出てれば無事にインストール完了です。

CHocolatey 関係のコマンドを使う場合は、一度シェルを再起動してください。

なんかエラーでたよ!って方は、このページの下のほうにエラー例、理由と対処を書いてます。

基本的なコマンド

管理者権限でコマンドプロンプトから実行したときの例です。 ※管理者権限がないと操作に失敗する場合があります

例:インストールしたいパッケージの検索

パッケージ検索(firefoxを検索する例)
choco list firefox

choco_search_firefox

「firefox」というキーワードに合致するパッケージとバージョンの一覧が表示されます。 マシンにインストールされているパッケージと、ネット上から検索したパッケージの両方が表示されます。

他にもコマンドでclist firefox とか choco search firefox でも同様の結果が得られます。好きなやつで。

パッケージのインストール先

インストールするアプリ側で制御している場合は C:\Program Files やアプリ固有の場所にインストールされますが、それ以外は基本的に %ChocolateyInstall%\lib 配下にインストールされる。

Chocolatey 経由でインストールしたソフトとレジストリ

Windows 上システムの様々な状態やバージョン等の情報はレジストリという場所で管理されています。ソフトをインストールするとき、レジストリが変更されることがありますが、Chocolatey はレジストリの差分をチェックして、アンインストールの時のために「.registry」ファイルとして出力して復旧可能にしてくれているようです。

よく使うコマンドのチートシート

コマンドの実行方法は上のパッケージの検索とどれも一緒です。

よく使うコマンドをまとめておきます。

コマンド 別の書き方 概要
choco help choco -? ヘルプでオプションの使い方確認
cver Chocolatey のバージョン確認
choco [コマンド名] -? ヘルプでchoco コマンドの詳細な使い方確認
choco list [パッケージ名] clist [パッケージ名] 該当するパッケージ一覧取得
choco list -lo clist -lo ローカルにインストール済みのパッケージ一覧表示
choco install [パッケージ名] cinst [パッケージ名] パッケージをインストール
choco uninstall [パッケージ名] cuninst [パッケージ名] パッケージをアンインストール
choco update [パッケージ名] cup [パッケージ名] 対象のパッケージをアップデート
choco update all cup all インストール済みのパッケージを全部アップデート
choco update all -y cup all -y インストール済みのパッケージを全部アップデート。確認はすっとばし

一気にパッケージをインストール

パッケージファイルの利用

事前にパッケージ一覧を記載した XML ファイル(XML マニフェスト)を用意しておきます。

書き方の詳細は公式をご参照。

packages.conf
<?xml version="1.0" encoding="utf-8"?>
<packages>
    <package id="git" />
    <package id="node.js" version="10.15.3" />
    <package id="vscode" />
</packages>

この例では git と node.js のバージョン 10.15.3 と VisualStudioCode を パッケージ一覧として定義しています。

※xml ファイルの名前は packages.config にする必要はないですが、末尾の拡張子部分は「.config」にする必要があります

この config ファイルを使っていっきにインストールできます。

コマンドプロンプト
cinst packages.conf -y

オプションの -y で確認入力を省略できます。自動化バッチ作るときは付けとくとよいですね。

ぱっけーじファイルについて

パッケージファイルは、〇〇の開発用パッケージ一覧XML とか××の開発用パッケージ一覧XML、みたいに分割しておいて、必要なセットを必要なプロジェクトに合わせてインストールする、というような使い方ができます。

コマンドで用意しておく

単純に cinst コマンドで複数パッケージをインストールすることもできます。

量が多いとごちゃごちゃしちゃいますけどね。

コマンドプロンプト
cinst git node.js vscode

Chocolatey インストール時のエラーと対処

インストール時の管理者権限不足のエラー

powershell からインストールするコマンドをコピペ実行したとき、PowerShell を管理者権限で実行していないと下のようなエラーが表示されますのでご注意を。

Chocolateyインストール時エラー(管理者権限不足)
Installation of Chocolatey to default folder requires Administrative permissions. Please run from elevated prompt. Plea
se see https://chocolatey.org/install for details and alternatives if needing to install as a non-administrator.
発生場所 C:\Users\amaji\AppData\Local\Temp\chocolatey\chocInstall\tools\chocolateysetup.psm1:212 文字:5
+     throw "Installation of Chocolatey to default folder requires Admi ...
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Installation of...-administrator.:String) [], RuntimeException
    + FullyQualifiedErrorId : Installation of Chocolatey to default folder requires Administrative permissions. Please
    run from elevated prompt. Please see https://chocolatey.org/install for details and alternatives if needing to in
  stall as a non-administrator.

chocolatey のデフォルトのインストール先に管理者権限が必要だけどアクセスできんかったよ…、というエラーです。

インストール時のネットワークエラー

インストールするときにインターネット経由で最新の Chocolatey 本体をダウンロードしています。

  • そもそもネットに繋がっていない場合

"1" 個の引数を指定して "DownloadString" を呼び出し中に例外が発生しました: "リモート サーバーに接続できません。" というエラーメッセージがでます。LANとかささってるか確認してね。

  • プロキシ越しで名前解決できない場合

"1" 個の引数を指定して "DownloadString" を呼び出し中に例外が発生しました: "リモート サーバーに接続できません。" というエラーメッセージとか、 (407) Proxy Authentication Required というエラーが出る場合があります。

企業内のネットワーク越しだと、Proxy(プロキシ)サーバなどを経由していてうまくダウンロード出来ない場合があります。

この場合は以下の手順で対応できます。

  1. 公式インストールページ からスクリプトダウンロード

公式のインストールページからインストール用の PowerShell スクリプトを適当な場所にダウンロードします。(install.ps1ファイル)

  1. PowerShell を管理者権限で起動

PowerShell を管理者権限で起動して、ダウンロードしたスクリプトのパスを確認しておく。

以下、PROXY設定例の画面。説明は後述。

chocolatey_proxy_setting2

install.ps1 のスクリプト内で使われる PROXY 接続用の環境変数をそれぞれ設定している

 
Chocolateyインストールスクリプト用の環境変数設定例
$env:chocolateyIgnoreProxy = 'false'
$env:chocolateyProxyLocation = "http://192.168.1.111/"
$env:chocolateyProxyUser = "amaji"
$env:chocolateyProxyPassword = "tekito_password"

プロキシ設定につかう環境変数と値

環境変数
chocolateyIgnoreProxy false で以下のPROXY設定を使用
chocolateyProxyLocation PROXYサーバの URL
chocolateyProxyUser PROXYサーバ利用時のユーザ名
chocolateyProxyPassword PROXYサーバ利用時のパスワード

環境変数に設定せず実行時に直接プロキシ指定

環境変数に設定しなくとも、 コマンドライン上から Chocolatey コマンドを実行するときに、直接プロキシ設定をしてあげる方法もあります。

下のコマンド実行で、プロキシ(この場合は http://192.168.1.111 が PROXY のURL)を経由した choco コマンドが実行できます。

 
ChocolateyでPROXY設定して実行する例
> choco search firefox --proxy="'http://192.168.1.111/'"

PROXYの認証が必要な場合は下のようにユーザ名やパスワードを指定して実行できます。

この例ではプロキシサーバに http://192.168.1.111 を指定、プロキシIDに”amaji”、パスワードに"mypassword" を指定しています。

 
ChocolateyでPROXY設定して実行する例
> choco search firefox --proxy="'http://192.168.1.111/'" --proxy-user="'amaji'" --proxy-password="'mypassword'"

このようなコマンドライン上にIDやパスワードを直接してもプロキシ経由での利用が可能ですが、 プロキシのIDやパスワードを直接コマンド上に記述することになりますので、バッチに組み込んだり、 コマンドラインの履歴に残ってしまう点は、注意して使う必要があります。

参考

変更履歴

  • 2020/10/16 カバー更新、プロキシ設定と実行について記事追記
  • 2020/07/18 初版公開
 
 
送信しました!

コメント、ありがとうございます。

なんかエラーでした

ごめんなさい。エラーでうまく送信できませんでした。ご迷惑をおかけします。しばらくおいてから再度送信を試していただくか、以下から DM などでご連絡頂ければと思います。

Twitter:@NodachiSoft_jp
お名前:
 
連絡先:
 
メッセージ:
 
戻る
内容の確認!

以下の内容でコメントを送信します。よろしければ、「送信」を押してください。修正する場合は「戻る」を押してください

お名前:
 
連絡先:
 
メッセージ:
 
Roboto からの操作ではないという確認のため確認キーを入れてください。
確認キー=95
戻る
 / 
送信確認へ
コメント欄
コメント送信確認へ

関連ありそうな記事(3件)です!

npm で javascript や typescript プロジェクトのパッケージを管理する基本

#パッケージ管理✎ 2020-07-21
npm で javascript や typescript プロジェクトのパッケージを管理するための流れ、基本的なコマンドの追加方を記載
広告領域
追従 広告領域
目次
Chocolatey の使い方とインストール手順
Chocolatey の使い方とインストール手順
インストール手順
インストール手順
必要なマシンスペックとか
必要なマシンスペックとか
Chocolatey のインストール手順
Chocolatey のインストール手順
基本的なコマンド
基本的なコマンド
例:インストールしたいパッケージの検索
例:インストールしたいパッケージの検索
パッケージのインストール先
パッケージのインストール先
Chocolatey 経由でインストールしたソフトとレジストリ
Chocolatey 経由でインストールしたソフトとレジストリ
よく使うコマンドのチートシート
よく使うコマンドのチートシート
一気にパッケージをインストール
一気にパッケージをインストール
パッケージファイルの利用
パッケージファイルの利用
コマンドで用意しておく
コマンドで用意しておく
Chocolatey インストール時のエラーと対処
Chocolatey インストール時のエラーと対処
インストール時の管理者権限不足のエラー
インストール時の管理者権限不足のエラー
インストール時のネットワークエラー
インストール時のネットワークエラー
プロキシ設定につかう環境変数と値
プロキシ設定につかう環境変数と値
環境変数に設定せず実行時に直接プロキシ指定
環境変数に設定せず実行時に直接プロキシ指定
参考
参考
変更履歴
変更履歴
Nodachisoft © 2020