簡體   English   中英

使用 ubuntu 映像在 Docker 容器內的 bash 腳本中運行 php 命令

[英]Run php command inside bash script inside Docker container with ubuntu image

我有一個 bash 腳本和一個 php 腳本。

--------編輯--------我解決了它,我只是愚蠢,我在下面寫了我的答案。

(如果你願意,我可以放代碼截圖。)

我的碼頭文件:

ARG VERSION=latest
FROM ubuntu:bionic
RUN apt-get -y update && apt-get -y upgrade
COPY ./resources/ start.sh /sandbox/
WORKDIR /sandbox/
ENTRYPOINT ["sh","start.sh"]

正如我在標題中所說,我想在 docker 容器中執行它們。

docker 容器的“入口點”是 bash 腳本。

在bash腳本里面我有一行

php PHP_SCRIPT.php

但是當我執行時,它給了我錯誤:

PHP_SCRIPT.php: php: 未找到

或類似的東西

我看到 php 命令通常駐留在“/usr/bin/php”中,但我嘗試在 docker 容器中運行命令“which php”,結果是“/usr/local/bin/php”

也許我錯誤地調用了 php 命令?

但我想要的結果是在我啟動 docker 容器時啟動的 bash 腳本內運行 php 腳本。

您正在使用FROM ubuntu:bionic的 docker 映像,默認情況下沒有安裝 PHP。 嘗試FROM php (或可用的眾多標簽之一)。

問題是你的容器中沒有安裝 PHP 要做到這一點,你可以使用你的官方 PHP 鏡像https://hub.docker.com/_/php

FROM php:7.4-cli

ARG VERSION=latest
RUN apt-get -y update && apt-get -y upgrade
COPY ./resources/ start.sh /sandbox/
WORKDIR /sandbox/
ENTRYPOINT ["sh","start.sh"]

而且我會收到“找不到 php 錯誤”,因為我沒有將 php 安裝到 docker 容器中。

所以,我試着寫在 dockerfile

RUN apt-get php-cli (我也嘗試使用 php:cli 並且似乎具有相同的效果),

嘗試將 php 安裝到容器,但是當我啟動容器時,它似乎會凍結並且不執行任何操作。

顯然,它不會“凍結”,但我只需要等待 php 在容器中更新。 :D

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM