CentOS 7 DockerCEのインストール
5683 ワード
Docker CEはDocker Community Editionの略、つまりDockerコミュニティ版で、Dockerの使用を開始し、コンテナベースのアプリケーションを使用しようとする開発者やスモールチームに適しています.CentOSでDocker CEの使用を開始するには、インストールする前にいくつかの前提条件が満たされていることを確認してください.
CentOS 7のメンテナンスバージョンが必要です.システムのカーネルバージョンは3.10より高く、
古いバージョンのDockerは
これらのパッケージがインストールされていないことを
Docker CEをインストールするには、必要に応じていくつかの方法があります.のほとんどのユーザーは、Dockerウェアハウスを設定してインストールし、インストールとアップグレードを容易にすることが推奨されています. 一部のユーザーはRPMパッケージをダウンロードし、手動でインストールし、完全に手動でアップグレードを管理し、主にインターネットに接続できないシステム環境でDockerをインストールするために使用します. テストおよび開発環境では、一部のユーザーは自動便利スクリプトを使用してDockerをインストールすることを選択しています.
新しいホストにDocker CEを初めてインストールする前に、Docker repositoryを設定する必要があります.その後、repositoryからDockerをインストールおよび更新できます.
インストールに必要なパッケージ stable repository を設定する
科学的なインターネットの情況の下で間違いを報告する可能性があって、aliyunの源で取って代わることができます
最新バージョンのDocker CEをインストールするか、次のステップに進んで特定のバージョンをインストールします.
Dockerはインストールされていますが、まだ起動していません.dockerグループは作成されていますが、このグループにユーザーは追加されていません.特定バージョンのDocker CE①をインストールrepoで使用可能なバージョンをリストしてソートします.たとえば、バージョン番号が高いから低いまで です.
②特定バージョンをインストール、パッケージ名(docker-ce)にバージョン文字列(最初のハイフンまで2列目)を付け、ハイフン(-)で区切る、例えばdocker-ce-18.03.0.ce. Dockerを起動し、オプションで を起動します. hello-worldイメージを実行してdocker が正しくインストールされていることを確認します.
このコマンドは、テストイメージをダウンロードしてコンテナで実行し、実行時にメッセージを印刷して終了します.
Docker CEをアップグレードするには、インストールする新しいバージョンを選択し、上記のインストール手順に従ってインストールします.
Docker Repositoryを使用してDockerをインストールできない場合は、リリース版をダウンロードできます.rpmファイルを手動でインストールします.Dockerをアップグレードするたびに、新しいファイルをダウンロードする必要があります.https://download.docker.com/linux/centos/7/x86_64/stable/Packages/インストールするDockerバージョンをダウンロードします.rpmファイル. Docker CEをインストールし、次のパスをDockerパッケージをダウンロードするパスに変更します.
Dockerの起動と検証は2.1と一致 Docker CEをアップグレードするには、より新しいパッケージファイルをダウンロードし、インストール手順を繰り返しますが、
次のコマンドを使用してdockerパッケージをアンインストールします.
ただし、ホスト上のイメージ、コンテナ、ボリューム、またはカスタムプロファイルは自動的に削除されません.すべての画像、コンテナ、ボリュームを削除するには、コマンドを実行します.
[xxxxxx@localhost docker_test]$ docker pull alpine Using default tag: latest Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/create?fromImage=alpine&tag=latest: dial unix/var/run/docker.sock: connect: permission denied
root以外のユーザーがdockerコマンドを実行すると、permission deniedエラーが表示されます.dockerマニュアルには原因と解決方法が表示されます.原文は次のとおりです.
Manage Docker as a non-root user The docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root and other users can only access it using sudo. The docker daemon always runs as the root user. If you don’t want to use sudo when you use the docker command, create a Unix group called docker and add users to it. When the docker daemon starts, it makes the ownership of the Unix socket read/writable by the docker group.
docker daemonはUnix Socketを使用しており、root権限が必要でアクセスできます.sudoコマンドを使用するか、現在のユーザーをdockerユーザーグループに追加するかの2つの解決策があります.dockerユーザーグループのアクションコマンドを追加するには、次の手順に従います.
リファレンスhttps://www.cnblogs.com/informatics/p/8276172.html
1.前提条件
オペレーティングシステムの要件
CentOS 7のメンテナンスバージョンが必要です.システムのカーネルバージョンは3.10より高く、
uname -r
コマンドで現在のカーネルバージョンを表示できます.centos-extras
リポジトリを有効にする必要があります.デフォルトでは、このリポジトリは有効になっていますが、無効にした場合は、再有効にする必要があります.ストレージドライバ推奨overlay2
古いバージョンのアンインストール
古いバージョンのDockerは
docker
またはdocker-engine
と呼ばれています.これらがインストールされている場合は、それらと関連する依存項目をアンインストールします.$ 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
で報告すれば、それでいいです./var/lib/docker/
は、imagesイメージ、containersコンテナ、volumesボリューム、およびnetworksネットワークを含むコンテンツを保持します.Docker CEパッケージは現在docker-ceと呼ばれています.2.Docker CEのインストール
Docker CEをインストールするには、必要に応じていくつかの方法があります.
2.1 repositoryウェアハウスを使用したインストール
新しいホストにDocker CEを初めてインストールする前に、Docker repositoryを設定する必要があります.その後、repositoryからDockerをインストールおよび更新できます.
2.1.1 repositoryの設定
yum-utils
はyum-config-managerユーティリティを提供し、device-mapper-persistent-data
およびlvm2
はdevicemapperストレージドライバに必要です.$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager \
--add-repo https://download.docker.com/linux/centos/docker-ce.repo
科学的なインターネットの情況の下で間違いを報告する可能性があって、aliyunの源で取って代わることができます
$ sudo yum-config-manager \
--add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.1.2 Docker CEのインストール
$ sudo yum install docker-ce
Dockerはインストールされていますが、まだ起動していません.dockerグループは作成されていますが、このグループにユーザーは追加されていません.
$ yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable
②特定バージョンをインストール、パッケージ名(docker-ce)にバージョン文字列(最初のハイフンまで2列目)を付け、ハイフン(-)で区切る、例えばdocker-ce-18.03.0.ce.
$ sudo yum install docker-ce-
$ sudo systemctl start docker
$ sudo systemctl enable docker
$ sudo docker run hello-world
このコマンドは、テストイメージをダウンロードしてコンテナで実行し、実行時にメッセージを印刷して終了します.
2.1.3 Docker CEのアップグレード
Docker CEをアップグレードするには、インストールする新しいバージョンを選択し、上記のインストール手順に従ってインストールします.
2.2オフラインパッケージでのインストール
Docker Repositoryを使用してDockerをインストールできない場合は、リリース版をダウンロードできます.rpmファイルを手動でインストールします.Dockerをアップグレードするたびに、新しいファイルをダウンロードする必要があります.
$ sudo yum install /path/to/package.rpm
Dockerの起動と検証は2.1と一致
yum -y upgrade
ではなくyum -y install
コマンドを使用して、新しいファイルを指します.3.Docker CEのアンインストール
次のコマンドを使用してdockerパッケージをアンインストールします.
$ sudo yum remove docker-ce
ただし、ホスト上のイメージ、コンテナ、ボリューム、またはカスタムプロファイルは自動的に削除されません.すべての画像、コンテナ、ボリュームを削除するには、コマンドを実行します.
$ sudo rm -rf /var/lib/docker
4.よくある質問
4.1 root以外のユーザー権限の問題
[xxxxxx@localhost docker_test]$ docker pull alpine Using default tag: latest Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/create?fromImage=alpine&tag=latest: dial unix/var/run/docker.sock: connect: permission denied
root以外のユーザーがdockerコマンドを実行すると、permission deniedエラーが表示されます.dockerマニュアルには原因と解決方法が表示されます.原文は次のとおりです.
Manage Docker as a non-root user The docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root and other users can only access it using sudo. The docker daemon always runs as the root user. If you don’t want to use sudo when you use the docker command, create a Unix group called docker and add users to it. When the docker daemon starts, it makes the ownership of the Unix socket read/writable by the docker group.
docker daemonはUnix Socketを使用しており、root権限が必要でアクセスできます.sudoコマンドを使用するか、現在のユーザーをdockerユーザーグループに追加するかの2つの解決策があります.dockerユーザーグループのアクションコマンドを追加するには、次の手順に従います.
$ sudo groupadd docker # docker
$ sudo gpasswd -a $USER docker # docker
$ newgrp docker # docker
$ docker ps # docker
リファレンスhttps://www.cnblogs.com/informatics/p/8276172.html