以下のコマンドラインの例は、VMware Fusion で動作します。

イメージに関連するコマンド

  • 新しいイメージを作成する場合、プライベート Docker レジストリから基本イメージを正常にプルするには、vctl login コマンドを使用して、プライベート Docker レジストリに最初にログインするか、--credential オプションを使用して、認証情報を保存する JSON ファイルをレジストリ認証用の vctl build コマンドに渡します。たとえば、
    1. 次のコマンドを使用して、Docker レジストリのユーザー名とパスワードを base64 でエンコードします。

      echo -n USER:PASSWORD | base64

    2. Docker レジストリ URL と、手順 1 で生成した base64 でエンコードされた文字列を使用して、config.json ファイルを作成します。
      {
                                 "auths": {
                                                "https://index.docker.io/v2/": {
                                                               "auth": "xxxxxxxxxxxxxxx"
                                               }
                                  }
      }
      
    3. JSON ファイルを vctl build コマンドに渡して、基本イメージがプライベート Docker レジストリにある新しいイメージを作成します。

      vctl build --file Dockerfile --tag docker.io/mynamespace/myrepo:1.0 --credential config.json .

コンテナに関連するコマンド

  • 実行中のコンテナを一覧表示します。

    vctl ps

  • 実行中のコンテナや停止したコンテナを含む、すべてのコンテナを一覧表示します。

    vctl ps --all

  • docker.io/library/nginx:latest と同じ nginx イメージを使用して、分離モードでコンテナを実行します。

    vctl run --name myContainer -d nginx

  • --publish オプションと fluentd イメージを使用してコンテナを実行します。ここでの fluentddocker.io/library/fluentd:latest に相当します。

    vctl run --name myContainer --publish 24224:24224/udp --publish 24224:24224 fluentd

  • 複数のコンテナを実行し、検出や相互の通信を可能にします。
    • vctl ユーティリティには、複数のコンテナをサブネットに接続するためのサブネットまたはリンク機能がありません。

      複数のコンテナ間の通信を有効にするには、--publish オプションを指定してコンテナを起動します。これにより、コンテナ ポートがホスト ポートにバインドされ、コンテナによって提供されるサービスに外部からアクセスできるようになります。

    vctl run --name mydb -m 2048 -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 mysql

    vctl run --name mymatomo -m 4096 -p 8080:80 -e MATOMO_DATABASE_HOST=<Host_IP>:3306 matomo

  • --volume オプションと bonita イメージを使用してコンテナを実行します。ここでの bonitadocker.io/library/bonita:latest に相当します。

    vctl run --name myContainer -p 8080:8080 --volume ~/Documents/container:/opt/bonita bonita

CRX 仮想マシンに関連するコマンド

  • CRX 仮想マシンへのシェル アクセスを取得します。
    • CRX 仮想マシンでホストされているコンテナを指定する。

      vctl execvm --sh -c myContainer

    • CRX 仮想マシンの vmx パスを指定する。
      注: vmx パスを取得するには、 vctl describe myContainer コマンドを実行し、出力の [ホスト仮想マシン] の値を参照します。

      vctl execvm --sh <Home_Folder_of_Your_Account>/.vctl/.r/vms/myContainer/myContainer.vmx

  • CRX 仮想マシン内でコマンドを実行します。
    • CRX 仮想マシンでホストされているコンテナを指定する。

      vctl execvm -c myContainer /bin/ls

    • CRX 仮想マシンの vmx パスを指定する。
      注: vmx パスを取得するには、 vctl describe myContainer コマンドを実行し、出力の [ホスト仮想マシン] の値を参照します。

      vctl execvm <Home_Folder_of_Your_Account>/.vctl/.r/vms/myContainer/myContainer.vmx /bin/ls