[英]How to install PHP composer on Windows docker image?
我正在嘗試在 Windows Docker 圖像上安裝 Composer
Dockerfile 提供如下
FROM mcr.microsoft.com/windows/servercore:ltsc2019
RUN powershell.exe Invoke-WebRequest -Uri "https://getcomposer.org/installer" -OutFile composer-setup.php
RUN powershell.exe Start-Process -FilePath "php.exe" -ArgumentList composer-setup.php
但是,當我構建 docker 映像時,它既不會安裝composer
,也不會引發任何錯誤
我嘗試使用以下方法安裝作曲家設置,但沒有奏效
1) RUN powershell.exe Start-Process -FilePath "php.exe" -ArgumentList composer-setup.php
2) RUN powershell.exe Invoke-Expression "'php.exe composer-setup.php'"
3) RUN powershell.exe Invoke-Expression "php.exe composer-setup.php"
4) RUN powershell.exe Invoke-Expression -Command "'php.exe composer-setup.php'"
5) RUN powershell.exe Invoke-Expression "& 'php.exe' composer-setup.php" - & not allowed error message
Kindly let me know how to execute php.exe composer-setup.php
using Powershell
or CMD
from within the Docker container.
編輯
我連接到 docker 圖像
PS C:\Users> docker run -it myphp:latest
Microsoft Windows [Version 10.0.17763.1935]
(c) 2018 Microsoft Corporation. All rights reserved.
並執行了以下操作,但什么也沒發生,而是返回提示
C:\Softwares\Composer>php.exe composer-setup.php
'php.exe' is not recognized as an internal or external command,
operable program or batch file.
C:\Softwares\Composer>C:\Softwares\PHP\php.exe composer-setup.php
C:\Softwares\Composer>
我將以下內容添加到 Dockerfile 並且效果很好
ADD vcruntime140.dll C:\\Windows\\System32\\vcruntime140.dll
與 Windows 主機(默認情況下存在 DLL)不同,我們需要將所需的 DLL 顯式添加到 Docker
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.