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

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

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

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

1210閲覧

ec2で起動させたdockerホストのエラーを解決したい

taba.3011

総合スコア12

Docker

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

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2023/03/01 06:10

前提

awsec2にdockerホストを立ち上げています。
ec2自体は起動し、dockerホストも立ち上がっている?のですが、エラーが出ています。
docker-machine restartや、docker-machine stop → startをするとエラーが出ます。

発生している問題・エラーメッセージ

$ docker-machine create --driver amazonec2 --amazonec2-open-port 8000 --amazonec2-region ap-northeast-1 aws-sandbox

重要そうな箇所だけ抜粋 Using SSH private key: /Users/tarou/.docker/machine/machines/aws-sandbox/id_rsa (-rw-------) &{[-F /dev/null -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none -o LogLevel=quiet -o PasswordAuthentication=no -o ServerAliveInterval=60 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ubuntu@52.195.8.154 -o IdentitiesOnly=yes -i /Users/tabataryoya/.docker/machine/machines/aws-sandbox/id_rsa -p 22] /usr/bin/ssh <nil>} About to run SSH command: cat /etc/os-release SSH cmd err, output: exit status 255: Error getting SSH command: ssh command error: command : cat /etc/os-release err : exit status 255

create時にdebugオプション追加

SSH cmd err, output: exit status 100: bash: line 0: type: docker: not found # Executing docker install script, commit: 66474034547a96caa0a25be56051ff8b726a1b28 DEPRECATION WARNING This Linux distribution (ubuntu xenial) reached end-of-life and is no longer supported by this script. No updates or security fixes will be released for this distribution, and users are recommended to upgrade to a currently maintained version of ubuntu. Press Ctrl+C now to abort this script, or wait for the installation to continue. + sudo -E sh -c apt-get update -qq >/dev/null + sudo -E sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null + sudo -E sh -c mkdir -p /etc/apt/keyrings && chmod -R 0755 /etc/apt/keyrings + sudo -E sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg + sudo -E sh -c chmod a+r /etc/apt/keyrings/docker.gpg + sudo -E sh -c echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu xenial stable" > /etc/apt/sources.list.d/docker.list + sudo -E sh -c apt-get update -qq >/dev/null + sudo -E sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq docker-ce docker-ce-cli containerd.io docker-scan-plugin docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin >/dev/null E: Unable to locate package docker-compose-plugin E: Unable to locate package docker-buildx-plugin Error creating machine: Error running provisioning: error installing docker: notifying bugsnag: [Error creating machine: Error running provisioning: error installing docker: ]

$ docker-machine ls

NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS aws-sandbox - amazonec2 Running tcp://52.195.8.154:2376 Unknown Unable to query docker version: Cannot connect to the docker engine endpoint

docker-machine stop → docker-machine start

Starting "aws-sandbox"... Machine "aws-sandbox" was started. Waiting for SSH to be available... Detecting the provisioner... Unable to verify the Docker daemon is listening: Maximum number of retries (10) exceeded

該当のソースコード

~/.aws/config

[default] region = ap-northeast-1 output = json

~/.aws/credentials

[default] aws_access_key_id = アクセスキー aws_secret_access_key = シークレットアクセスキー

$ docker-machine inspect aws-sandbox

{ "ConfigVersion": 3, "Driver": { "IPAddress": "52.195.8.154", "MachineName": "aws-sandbox", "SSHUser": "ubuntu", "SSHPort": 22, "SSHKeyPath": "/Users/tabataryoya/.docker/machine/machines/aws-sandbox/id_rsa", "StorePath": "/Users/tabataryoya/.docker/machine", "SwarmMaster": false, "SwarmHost": "tcp://0.0.0.0:3376", "SwarmDiscovery": "", "Id": "7259f7a7d5f0fd22a3b4350e9ed8d3f6", "AccessKey": "AKIA5XOTYXL3P5UKQMBE", "SecretKey": "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", "SessionToken": "", "Region": "ap-northeast-1", "AMI": "ami-bcb7f6da", "SSHKeyID": 0, "ExistingKey": false, "KeyName": "aws-sandbox", "InstanceId": "i-0e095e3ee6474ef06", "InstanceType": "t2.micro", "PrivateIPAddress": "172.31.252.105", "SecurityGroupId": "", "SecurityGroupIds": [ "sg-0427605930286d81d" ], "SecurityGroupName": "", "SecurityGroupNames": [ "docker-machine" ], "SecurityGroupReadOnly": false, "OpenPorts": [ "8000" ], "Tags": "", "ReservationId": "", "DeviceName": "/dev/sda1", "RootSize": 16, "VolumeType": "gp2", "IamInstanceProfile": "", "VpcId": "vpc-f8d1329e", "SubnetId": "subnet-06f763d7fd9341ad1", "Zone": "a", "RequestSpotInstance": false, "SpotPrice": "0.50", "BlockDurationMinutes": 0, "PrivateIPOnly": false, "UsePrivateIP": false, "UseEbsOptimizedInstance": false, "Monitoring": false, "SSHPrivateKeyPath": "", "RetryCount": 5, "Endpoint": "", "DisableSSL": false, "UserDataFile": "" },

試したこと

・docker-machine create時に「--native-ssh」オプションを使用
・docker-machine create時にアクセスキー、シークレットアクセスキーを直接入力
・~/.awsディレクトリにchmod 700 を付与
・ /Users/tabataryoya/.docker/machine/machines/aws-sandbox/id_rsaファイルにchmod600を付与

・docker-machine regenerate-certs --client-certs aws-sandbox

Regenerating TLS certificates Regenerating local certificates Waiting for SSH to be available... Detecting the provisioner... Installing Docker... error installing docker:

補足情報(FW/ツールのバージョンなど)

・dockerホストに何故かssh接続はできています。

$ docker-machine ssh aws-sandbox

Docker version 20.10.22
docker-machine version 0.16.2
VBoxManage 6.1.32r149290

ssh接続に問題がありそうなので色々試してみたのですが解決できませんでした。
どなたか詳しい方がいましたら教えていただきたいです。

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

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

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

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

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

guest

回答1

0

自己解決

sshで接続し、そこでdockerをインストールしたら解決しました。

$ docker-machine ssh ホスト名 #接続先ec2(docker -v をしたら下記のコマンド命令がありました。) $ sudo apt install docker.io #ローカル $ docker-machine regenerate-certs ホスト名

正直なところ何故エラーが起こっていたのか、何故解決したのかがわかっていませんが....

投稿2023/03/01 10:13

taba.3011

総合スコア12

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問