私はdocker-machineとdocker-composeを使って1つのec2インスタンスに2つのサービスを展開しようとしています。ここでdocker-machineでdocker-composeを実行しています
は私がやっているものです:
docker-machine create --driver amazonec2 --engine-install-url=https://web.archive.org/web/20170623081500/https://get.docker.com mymachine
docker-machine ssh mymachine -- mkdir -p /home/ubuntu/myapp
git clone https://github.com/myapp/service1.git
docker-machine scp -r ./service1 mymachine:/home/ubuntu/myapp/
rm -rf ./service1
git clone https://github.com/myapp/service2.git
docker-machine scp -r ./service2 mymachine:/home/ubuntu/myapp/
rm -rf ./service2
docker-machine env mymachine
//export DOCKER_TLS_VERIFY="1"
//export DOCKER_HOST="something"
//export DOCKER_CERT_PATH="something"
//export DOCKER_MACHINE_NAME="mymachine"
eval $(docker-machine env mymachine)
docker-machine active
//mymachine
docker-compose -f ./docker-compose-prod.yml up -d
私はこのエラーを取得する:ドッカ - コン・prod.ymlのbuild path /home/ubuntu/myapp/service1 either does not exist, is not accessible, or is not a valid URL.
関連部品:
version: '3'
services:
service1:
build: /home/ubuntu/myapp/service1
service2:
build: /home/ubuntu/myapp/service2
パスは結構ですsshでチェックすると、docker-composeはまだローカルマシン上で作業しようとしているようですが、ローカルに存在するビルドパスを提供するとうれしいです。 Docker自体は、リモートマシン上でコマンドを実行します。
ドッカーをリモートドッカーマシンで実行するにはどうすればよいですか?
私はこれに新しいので、うまくいけば何かが些細なことを欠いている。 助けてくれてありがとう!
ありがとうございます。私はそれが動作するはずの方法について間違った仮定をしたようだ – marton