2017-05-30 5 views
0

私は現在、オープン・シフトに移行しようとしている従来のアプリケーションをphp 5.4でビルドしています。代替容器イメージを使用したオープン・シフト

しかし、opensshift 3.5では、デフォルトのコンテナイメージとしてphp 5.4を使用できないようです。ここに私のbuildconfigファイルの一部があります。

... 
    source: 
    type: Git 
    git: 
     uri: 'https://xxx.git' 
     ref: master 
    secrets: null 
    strategy: 
    type: Source 
    sourceStrategy: 
     from: 
     kind: ImageStreamTag 
     namespace: openshift 
     name: 'php:5.5' 
     ... 

現在のところ、すべて正常に動作します。しかし、sourceStrategyセクションで、名前を「name: 'php:5.4'」に変更すると失敗します。

php 5.4環境を取得する方法はありますか?

次のURLにPHP 5.4のカートリッジがあるようです:私は私のopenshift環境に統合する方法を https://github.com/openshift-cartridges/origin-community-cartridges/tree/master/openshift-origin-cartridge-php-5.4

私は現在、テストマシンでopenshift container platform 3.5を実行しています。

ありがとうございます。

+0

の下で参照してください。カートリッジは、使用しているV3ではなく、古いOpenShift V2用です。 –

+0

バンドルされたS2Iビルダーを使用したOpenShift V3の唯一のPHPバージョンサポートは、5.5,5.6、および7.0です。 https://github.com/sclorg/s2i-php-container –

答えて

1

Grahamのコメントで述べたように、Software Collections LibraryはPHP 5.4のコンテナを提供していませんが、独自のイメージを作成してOpenShift環境に展開することはできません。

PHP 5.4のインストールイメージを作成し、例Dockerfile:

FROM centos:7 

RUN yum install -y php-common php-cli ftp://rpmfind.net/linux/centos/7.3.1611/os/x86_64/Packages/php-5.4.16-42.el7.x86_64.rpm 

CMD ["php", "-v"] 

次のコマンドを実行します。次に作成するには、この画像を使用することができ、画像を構築し、 docker build -t docker.io/your-username/php:5.4 . docker push docker.io/your-username/php:5.4

をDockerhubするためにそれをプッシュしますImageStreamまたはDockerハブの画像を直接DeploymentConfigのcontainers:["image"]

+0

唯一の問題は、そうすることでS2Iを有効にすることができず、ホストされるファイルも含まれる独自のイメージを構築する必要があることです。 –

+0

確かに、もし彼が**必要なら** 5.4の環境はそれか、それとも自分のS2Iイメージを作成するのでしょうか?これは、おそらくより簡単なアプローチです。 – user2983542

+0

Grahamが言っていることによると、この解決策では、前回と同じようにgitを使ってソースファイルを自動的に取得することはできませんでしたか?コンテナにもApacheを追加する必要がありますか? – hervens

関連する問題