2017-12-15 23 views
0

私はいくつかのファイルをコピーしてコンテナを起動するホストにpowershellスクリプトを持っています。ホストPowershellスクリプトからDocker ContainerでRoot Powershellスクリプトを実行

#Copy File 
docker cp "D:\addApplication.ps1" website:/inetpub/wwwroot/ 

#Start Container 
docker start website 
Write-Host 'Process has started' 

#Execute Container 
docker exec -ti website powershell 

#Run Script 
Invoke-Expression "C:\inetpub\wwwroot\addApplication.ps1" 

最後から二番目のコマンドは、罰金実行しますが、私は、コンテナのセッションを終了して

質問(それはホスト上でそのファイルを見つけたので、あるファイルが見つかりません)エラーを返したときに、最後のコマンドが実行されます:とにかくあり私は、スクリプトからコンテナセッションでコマンドを実行できます。または、任意のプロセスでスクリプトから任意のコマンドを実行してください(混乱している)

何か助けていただければ幸いです。

おかげ

+0

'経由で直接スクリプトを実行し、対話型のセッションを開始する-tiフラグを使用しないでください起動-Expression'スクリプトを実行するための正しいコマンドではありません。あなたは '&" C:\ inetpub \ wwwroot \ addApplication.ps1 "を使用するべきです – arco444

+0

問題は...セッションを終了するまでコンテナセッションを開始し、最後のコマンドを実行しなかった2番目の最後のコマンドを実行するときです。 ..コンテナセッションで最後のコマンドを実行したい...ホストではない –

+1

その後、対話的に実行しないでください。 'docker execウェブサイトpowershell -command「C:\ inetpub \ wwwroot \ addApplication.ps1」を試してください。 – arco444

答えて

1

だけdocker execコマンド

docker exec website powershell -command "C:\inetpub\wwwroot\addApplication.ps1" 
関連する問題