質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

9361閲覧

systemctl start dockerが失敗する

Jigsaw0815

総合スコア14

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2022/02/24 05:14

start dockerを行いたい

virtualbox,Vagrantを用いてdocker環境構築を行っていますが、うまくいっておりません。
どなたかご教授をお願いいたします。

環境

Vagrant 2.2.19
VirtualBox 6.1.32 r149290 (Qt5.6.2)
CentOS Linux release 7.9.2009 (Core)

発生している問題

$ sudo systemctl start docker Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details. $ status docker.service ● docker.service - Docker Application Container Engine Loaded: loaded (/etc/systemd/system/docker.service; disabled; vendor preset: disabled) Drop-In: /etc/systemd/system/docker.service.d └─http-proxy.conf Active: failed (Result: exit-code) since 木 2022-02-24 12:27:49 JST; 11s ago Docs: http://docs.docker.io Process: 9447 ExecStart=/usr/bin/docker daemon -H fd:// $OPTIONS $DOCKER_STORAGE_OPTIONS $DOCKER_NETWORK_OPTIONS $ADD_REGISTRY $BLOCK_REGISTRY $INSECURE_REGISTRY (code=exited, status=1/FAILURE) Main PID: 9447 (code=exited, status=1/FAILURE) $ sudo journalctl -xe 2月 24 13:58:56 dopam sudo[13891]: pam_unix(sudo:session): session opened for user root by vagrant(uid=0) 2月 24 13:59:17 dopam systemd[1]: Starting Cleanup of Temporary Directories... -- Subject: Unit systemd-tmpfiles-clean.service has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit systemd-tmpfiles-clean.service has begun starting up. 2月 24 13:59:17 dopam systemd[1]: Started Cleanup of Temporary Directories. -- Subject: Unit systemd-tmpfiles-clean.service has finished start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit systemd-tmpfiles-clean.service has finished starting up. -- -- The start-up result is done. 2月 24 13:59:36 dopam sudo[13891]: pam_unix(sudo:session): session closed for user root 2月 24 13:59:38 dopam sudo[13930]: vagrant : TTY=pts/0 ; PWD=/etc/systemd/system ; USER=root ; COMMAND=/bin/vi docker.service 2月 24 13:59:38 dopam sudo[13930]: pam_unix(sudo:session): session opened for user root by vagrant(uid=0) 2月 24 13:59:47 dopam sudo[13930]: pam_unix(sudo:session): session closed for user root 2月 24 14:01:01 dopam systemd[1]: Created slice User Slice of root. -- Subject: Unit user-0.slice has finished start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit user-0.slice has finished starting up. -- -- The start-up result is done. 2月 24 14:01:01 dopam systemd[1]: Started Session 53 of user root. -- Subject: Unit session-53.scope has finished start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit session-53.scope has finished starting up. -- -- The start-up result is done. 2月 24 14:01:01 dopam CROND[14012]: (root) CMD (run-parts /etc/cron.hourly) 2月 24 14:01:01 dopam run-parts(/etc/cron.hourly)[14015]: starting 0anacron 2月 24 14:01:01 dopam run-parts(/etc/cron.hourly)[14021]: finished 0anacron 2月 24 14:01:01 dopam systemd[1]: Removed slice User Slice of root. -- Subject: Unit user-0.slice has finished shutting down -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit user-0.slice has finished shutting down. 2月 24 14:01:28 dopam sudo[14047]: vagrant : TTY=pts/0 ; PWD=/etc/systemd/system ; USER=root ; COMMAND=/bin/systemctl daemon-reload 2月 24 14:01:28 dopam sudo[14047]: pam_unix(sudo:session): session opened for user root by vagrant(uid=0) 2月 24 14:01:28 dopam polkitd[739]: Registered Authentication Agent for unix-process:14049:17386845 (system bus name :1.243 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/Poli 2月 24 14:01:28 dopam systemd[1]: Reloading. 2月 24 14:01:28 dopam polkitd[739]: Unregistered Authentication Agent for unix-process:14049:17386845 (system bus name :1.243, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale ja_JP.UTF- 2月 24 14:01:28 dopam sudo[14047]: pam_unix(sudo:session): session closed for user root 2月 24 14:06:15 dopam polkitd[739]: Registered Authentication Agent for unix-process:14301:17415527 (system bus name :1.245 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/Poli 2月 24 14:06:18 dopam polkitd[739]: Operator of unix-process:14301:17415527 successfully authenticated as unix-user:root to gain ONE-SHOT authorization for action org.freedesktop.systemd1.manage-unit-files 2月 24 14:06:27 dopam polkitd[739]: Operator of unix-process:14301:17415527 successfully authenticated as unix-user:root to gain ONE-SHOT authorization for action org.freedesktop.systemd1.reload-daemon for 2月 24 14:06:27 dopam systemd[1]: Reloading. 2月 24 14:06:27 dopam polkitd[739]: Unregistered Authentication Agent for unix-process:14301:17415527 (system bus name :1.245, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale ja_JP.UTF- 2月 24 14:07:03 dopam sudo[14381]: vagrant : TTY=pts/0 ; PWD=/etc/systemd/system ; USER=root ; COMMAND=/sbin/service docker status 2月 24 14:07:03 dopam sudo[14381]: pam_unix(sudo:session): session opened for user root by vagrant(uid=0) 2月 24 14:07:03 dopam sudo[14381]: pam_unix(sudo:session): session closed for user root 2月 24 14:07:53 dopam sudo[14435]: vagrant : TTY=pts/0 ; PWD=/etc/systemd/system ; USER=root ; COMMAND=/bin/journalctl -xe 2月 24 14:07:53 dopam sudo[14435]: pam_unix(sudo:session): session opened for user root by vagrant(uid=0)

実施した手順

$ tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository baseurl=https://download.docker.com/linux/centos/7/x86_64/stable/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF $ sudo yum install -y yum-utils $ sudo yum-config-manager --enable * addons $ sudo yum install -y chrony docker-engine $ mkdir -p /etc/systemd/system/docker.service.d $ tee /etc/systemd/system/docker.service.d/http-proxy.conf <<-'EOF' [Service] Environment="HTTP_PROXY=http://hogehoge:8080" "HTTPS_PROXY=http://hogehoge:8080" "NO_PROXY=localhost" EOF $ systemctl daemon-reload $ systemctl enable docker $ systemctl start docker

試したこと

考察

下記EnvironmentFileに設定されているパスに該当ファイルが存在しません。
なにか関係がありますでしょうか。

$ systemctl show docker | grep EnvironmentFile EnvironmentFile=/etc/sysconfig/docker (ignore_errors=yes) EnvironmentFile=/etc/sysconfig/docker-storage (ignore_errors=yes) EnvironmentFile=/etc/sysconfig/docker-network (ignore_errors=yes)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TaichiYanagiya

2022/02/25 12:23

"journalctl -u docker.service -l --no-pager" で docker.service に絞り込むと何か原因が見つからないでしょうか? > 下記EnvironmentFileに設定されているパスに該当ファイルが存在しません。 > なにか関係がありますでしょうか。 空のファイルを作成するか、「EnvironmentFile=-/etc/sysconfig/docker」として試してみるといいのではないでしょうか?
Jigsaw0815

2022/03/01 01:28

空ファイルを作成しましたが、実行結果に変化はありませんでした。 また、ご提示いただいたコマンドの実行結果は以下の通りでした。 $ journalctl -u docker.service -l --no-pager Hint: You are currently not seeing messages from other users and the system. Users in the 'systemd-journal' group can see all messages. Pass -q to turn off this notice. No journal files were opened due to insufficient permissions.
TaichiYanagiya

2022/03/01 01:53

ごめんなさい。sudo 付けてください。 "sudo journalctl -u docker.service -l --no-pager"
Jigsaw0815

2022/03/01 03:18

sudoを付けますと、以下のログが表示されました。 3月 01 10:22:59 systemd[1]: Starting Docker Application Container Engine... 3月 01 10:22:59 docker[27978]: docker: 'daemon' is not a docker command. 3月 01 10:22:59 docker[27978]: See 'docker --help' 3月 01 10:22:59 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE 3月 01 10:22:59 systemd[1]: Failed to start Docker Application Container Engine. 3月 01 10:22:59 systemd[1]: Unit docker.service entered failed state. 3月 01 10:22:59 systemd[1]: docker.service failed. docker daemonがコマンドとして認識されていないようです。 これは、docker.service内の ExecStart=/usr/bin/docker daemon -H fd:// $OPTIONS \ のことを指しているものと推察しますが、 公式のガイド(http://docs.docker.jp/engine/articles/systemd.html)でも同じようになっています。 変更が必要でしょうか?
TaichiYanagiya

2022/03/01 04:24

"daemon" 不要ですね。 https://docs.docker.com/engine/install/centos/ のとおりにインストールすれば、/lib/systemd/system/docker.service で "ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock" となっているはずです。 "EnvironmentFile=" も見当たらないです。
Jigsaw0815

2022/03/01 05:38 編集

ご指摘の通り変更しましたところ、"sudo journalctl -u docker.service -l --no-pager"で下記のログが出るようになりました。 socketが見つからないようなことが書いてあるので、containerd.sockが存在していないのでしょうか? 追記:確認したところ、/run内にcontainerdディレクトリが存在しませんでした。    これはどの動作で作成されるものなのでしょうか 3月 01 14:19:40 systemd[1]: Starting Docker Application Container Engine... 3月 01 14:19:40 dockerd[7150]: time="2022-03-01T14:19:40.100862697+09:00" level=info msg="Starting up" 3月 01 14:19:40 dockerd[7150]: failed to load listeners: no sockets found via socket activation: make sure the service was started by systemd 3月 01 14:19:40 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE 3月 01 14:19:40 systemd[1]: Failed to start Docker Application Container Engine. 3月 01 14:19:40 systemd[1]: Unit docker.service entered failed state. 3月 01 14:19:40 systemd[1]: docker.service failed.
TaichiYanagiya

2022/03/01 06:18

デフォルトでは /lib/systemd/system/docker.service で "After=network-online.target firewalld.service containerd.service", "Requires=docker.socket containerd.service" となっているので、containerd が先に起動し、/run/containerd/ が作成されます。 もう一度、インストールからやり直してみては?
Jigsaw0815

2022/03/01 06:21

社内で共有されたVagrantFileが古くなっているのが原因なのでしょうか… ご提案通り、dockerのインストールをやり直してみます。ありがとうございます。
guest

回答1

0

自己解決

Vagrant destroyした後、公式のガイド( https://docs.docker.com/engine/install/centos/ )に沿って再インストールすることで解決いたしました。

原因は、社内で共有されたVagrantFileからinit.shを呼び出しており、その中で2017年時点での方法でdockerのインストールを行っていたためだったと思われます。
init.shからdocker関連の記述を削除して手動でインストールを進めたところうまくいきました。
ありがとうございました。

投稿2022/03/03 09:57

Jigsaw0815

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問