Centos 7 Docker CEのインストール

5820 ワード

プロジェクトでDockerを使う必要があるので、模索してDockerのインストールを完了し、このブログを書いて記録します.
古いバージョンのDockerをアンインストール
    Dockerの古いバージョンはDockerまたはDocker-engineと呼ばれています.これらのコンポーネントがインストールされている場合は、関連する依存項目をアンインストールします.(Dockerがインストールされていない場合は、この手順を直接スキップできます)
$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

yumがこれらのパッケージがインストールされていないことを報告した場合、問題はありません.
Docker CEのインストール方法
  • ほとんどのユーザーは、Dockerのリポジトリを設定してインストールし、タスクのインストールとアップグレードを容易にします.(リポジトリのインストール)
  • RPMパッケージをダウンロードして手動でインストールし、アップグレードを完全に手動で管理するユーザーもいます.これは、インターネット接続のない空隙システムにDockerをインストールするなど、場合によっては非常に有用である.(RPMパッケージ実装)
  • テストおよび開発環境では、一部のユーザーは自動化された便利なスクリプトを使用してDockerをインストールすることを選択します.(スクリプトインストール)
  • リポジトリを使用したインストール
     新しいホストにDocker CEを初めてインストールする前に、Dockerリポジトリを設定する必要があります.その後、リポジトリからDockerをインストールおよび更新できます.
    リポジトリの設定
         1.インストールに必要なパッケージ:yum-utilsはyum-config-managerユーティリティを提供し、devicemapperストレージドライバはdevice-mapper-persistent-dataとlvm 2が必要です.
    $ sudo yum install -y yum-utils \
      device-mapper-persistent-data \
      lvm2

          2.  次のコマンドを使用して、安定したリポジトリを設定します.エッジやテストリポジトリから構築をインストールしたい場合でも、常に安定したリポジトリが必要です.
    $ sudo yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo

        3.  オプション:エッジの有効化とリポジトリのテストを行います.これらのリポジトリは上のdocker.repoファイルに含まれていますが、デフォルトでは無効です.安定したリポジトリとともに有効にできます.
    $ sudo yum-config-manager --enable docker-ce-edge
    
    $ sudo yum-config-manager --enable docker-ce-test

     --disableフラグを使用してyum-config-managerコマンドを実行することで、エッジを無効にしたり、リポジトリをテストしたりすることができます.再有効にするには、--enableフラグを使用します.次のコマンドは、エッジリポジトリを無効にします.
    $ sudo yum-config-manager --disable docker-ce-edge

    Docker CEのインストール
    1.最新バージョンのDocker CEのインストール
    $ sudo yum install docker-ce

        複数のDockerリポジトリが有効になっている場合、yumインストールまたはyum updateコマンドでバージョンを指定せずにインストールまたは更新すると、安定性の要件に合わない可能性があります.
    2.指定バージョンのDocker CEのインストール
  •     倉庫で使用可能なバージョンをリストし、ソートします.この例では、結果をバージョン番号でソートします.最大から最低まで:
  • $ yum list docker-ce --showduplicates | sort -r
    
    docker-ce.x86_64            18.09.0.ce-1.el7.centos             docker-ce-stable

    返されるリストは、有効なリポジトリによって異なり、あなたのCentOSバージョン固有です(この例では.el 7接尾辞で表されます).
  •  完全に定義されたパッケージ名によって特定のバージョンがインストールされ、パッケージ名(docker-ce)にバージョン文字列(2列目)を加えて最初のハイフンまでハイフン(-)で区切る、例えばdocker-ce-18.03.0.ce.
  • .
    $ sudo yum install docker-ce-

    3.Dockerの起動
    $ sudo systemctl start docker

    4. hello-worldイメージを実行してdockerが正しくインストールされていることを確認します.
    $ sudo docker run hello-world

    このコマンドは、テストイメージをダウンロードし、コンテナで実行します.コンテナが実行されると、メッセージが印刷され、終了します.
    Docker CEの更新
    Docker CEをアップグレードするには、インストール手順に従ってインストールする新しいバージョンを選択します.
    パッケージからのインストール
     Dockerのリポジトリを使用してDockerをインストールできない場合は、リリースに適した.rpmファイルをダウンロードして手動でインストールできます.Dockerをアップグレードするたびに、新しいファイルをダウンロードする必要があります.
    1. >Dockerバージョンライブラリに移動
    注意:エッジパッケージをインストールするには、上記のURLの単語stableをedgeに変更します.安定とエッジチャネルを理解します.
    2. Docker CEをインストールし、次のパスをDockerパッケージをダウンロードするパスに変更します.
    $ sudo yum install /path/to/package.rpm

    3.Dockerの起動
    $ sudo systemctl start docker

    4. hello-worldイメージを実行してdockerが正しくインストールされていることを確認します.
    $ sudo docker run hello-world

    このコマンドは、テストイメージをダウンロードし、コンテナで実行します.コンテナが実行されると、メッセージが印刷され、終了します.
    Docker CEの更新
    Docker CEをアップグレードするには、新しいパッケージファイルをダウンロードし、インストール手順を繰り返し、yum-y installではなくyum-y upgradeを使用して新しいファイルを指します.
    スクリプトを使用したインストール
        Dockerはget.docker.comとtest.docker.comで便利なスクリプトを提供し、Docker CEのedgeとテストバージョンを開発環境に迅速かつ非インタラクティブにインストールできます.スクリプトのソースコードはdocker-installリポジトリにあります.これらのスクリプトは、本番環境で使用することをお勧めしません.使用する前に、潜在的なリスクを理解する必要があります.
        1.  スクリプトを実行するにはrootまたはsudo権限が必要です.したがって、スクリプトを実行する前に、スクリプトをよくチェックして監査する必要があります.
        2. これらのスクリプトは、Linuxのリリースとバージョンを検出し、パッケージ管理システムを構成しようとします.また、スクリプトではインストールパラメータをカスタマイズできません.Dockerの観点や自分で組織したガイドラインや基準から見ると、構成がサポートされていない可能性があります.
        3.  スクリプトインストールパッケージマネージャのすべての依存項目と推奨事項は、確認を必要としません.これは、ホストの現在の構成に応じて、多くのパッケージがインストールされる可能性があります.
        4.  このスクリプトでは、インストールするDockerバージョンを指定し、エッジチャネルでパブリッシュされた最新バージョンをインストールするオプションはありません.
        5.  他のメカニズムを使用してホストにDockerをインストールしている場合は、便利なスクリプトは使用しないでください.
    この例ではget.docker.comのスクリプトを使用してLinuxにDocker CEの最新バージョンをインストールします.最新のテストバージョンをインストールするにはtest.docker.comを使用します.次の各コマンドでは、getの各出現をtestで置き換えます.
    警告:ローカルでスクリプトを実行する前に、インターネットからダウンロードしたスクリプトを常に確認してください.
    $ curl -fsSL https://get.docker.com -o get-docker.sh
    $ sudo sh get-docker.sh
    
    

    Dockerをルート以外のユーザーとして使用する場合は、次の方法でDockerグループにユーザーを追加することを考慮します(有効になるには、ログアウトして再ログインしてください).
    sudo usermod -aG docker your-user

    警告:ユーザーをdockerグループに追加すると、Dockerホスト上のroot権限を取得するために使用できるコンテナを実行する能力が与えられます.詳細については、Dockerデーモンの攻撃面を参照してください.
     Docker CEがインストールされています.DEBベースのリリースで自動的に起動します.RPMベースの配布では、適切なシステムctlまたはサービスコマンドを使用して手動で起動する必要があります.メッセージに示すように、root以外のユーザーはデフォルトでDockerコマンドを実行できません.
    スクリプトによるDOCKERのアップグレード
     便利なスクリプトを使用してDockerをインストールした場合は、パッケージマネージャを使用してDockerを直接アップグレードする必要があります.便利なスクリプトを再実行するメリットはありません.ホストに追加したリポジトリを再追加しようとすると、問題が発生する可能性があります.
    Docker CEのアンインストール
    1.  Docker CEパッケージのアンインストール
    $ sudo yum remove docker-ce

    2.   ホスト上の画像、コンテナ、ボリューム、またはカスタムプロファイルは自動的に削除されません.すべてのイメージ、コンテナ、ボリュームを削除するには、次の手順に従います.
    $ sudo rm -rf /var/lib/docker

    編集したプロファイルを手動で削除する必要があります.