地方在住IT系ニート

bkds

Containerdのメモ

Containerdの環境構築

Kubernetesがコンテナ環境をDockerからContainerdに移行しているので、今回はローカル環境もDockerからContainerdに移行してみます。

今回必要なものは以下の通りです。
ただ、nerdctl-fullによりすべて揃えることができるため、構築は簡単です。

nerdctlのインストール

# nerdctl-fullをダウンロード
curl -OL https://github.com/containerd/nerdctl/releases/download/v1.1.0/nerdctl-full-1.1.0-linux-amd64.tar.gz

# インストール
sudo tar Cxzvvf /usr/local nerdctl-full-1.1.0-linux-amd64.tar.gz

Containerdの利用

# rootless化
containerd-rootless-setuptool.sh install
containerd-rootless-setuptool.sh install-buildkit
containerd-rootless-setuptool.sh install-bypass4netnsd

# コンテナを起動
nerdctl run -d --name nginx -p 8080:80 nginx:alpine

# もしネットワーク関連でエラーが出る場合
containerd-rootless-setuptool.sh nsenter bash
vim /etc/resolv.conf
    //nameserver 8.8.8.8

エラー対応

  • WARN[0000] Ignoring: volume: Bind: [CreateHostPath]

docker-compose.ymlのvalumes部分の記載に問題があります。
下記の形式で記載してください。

volumes:
  - type: bind
    source: /source/fullpath
    target: /target/fullpath

メモ

rootlessでnerdctlが一部利用がうまくいかなかったので、下記でrootfull化します。

# rootfull化
containerd-rootless-setuptool.sh uninstall
containerd-rootless-setuptool.sh uninstall-buildkit
containerd-rootless-setuptool.sh uninstall-bypass4netnsd
にほんブログ村 IT技術ブログ IT技術メモへPVアクセスランキング にほんブログ村