バージョン選択

フォーラム

メニュー

オンライン状況

46 人のユーザが現在オンラインです。 (36 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 46
もっと...

サイト内検索

質問 > その他 > docker-compose使用時のプラグイン追加について

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
NMAKINO
投稿日時: 2024/9/13 13:01
対応状況: −−−
常連
登録日: 2018/9/21
居住地:
投稿: 34
docker-compose使用時のプラグイン追加について
▼テンプレート
[EC-CUBE] 4.2.3

[EC-CUBE] 4.2.3

■ 今の開発環境
・公式のdocker-composeを使用し開発しています。

■ 今現在困っていること
1. プラグインをインストール
2. プラグインのファイル、composer.json、composer.lock、dtb_pluginへのマイグレーション含めてGitにPush
3. 検証のため、他の環境にてgit pull
4. コンテナを立ち上げるため docker-compose up -d を行うとエラー。

■ 知りたいこと
以下のスレッドなどを拝見したのですがdocker-composeを使用して開発をしている場合
コンテナ立ち上げ時に composer installしている場合、エラーになるため、
自分の中では、vendorごと gitに追加して、composer installを実行しないで開発環境を構築するのかな?とも思いますが
一般的にどのように回避しているのでしょうか?


インストールしたプラグインの理想的なGit管理方法について
nanasess
投稿日時: 2024/9/13 13:25
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2315
Re: docker-compose使用時のプラグイン追加について
composer のローカルリポジトリ機能を活用して何とかしてます。
https://zenn.dev/nanasess/articles/ec-cube4-plugin-development

プラグインは EC-CUBE の app/Plugin 以下ではなく、 plugin_repos といったディレクトリを作成して、その中に未インストール状態で Git で管理します。

docker-php-entrypoint に以下のようなコードを記述して、コンテナ起動時にプラグインをインストールします


#!/bin/bash
# デフォルトは /bin/sh だが /bin/bash にしておく

INSTALL_PLUGINS="ExamplePlugin,Example2Plugin"

## split comma separated string into array
if [ -z ${INSTALL_PLUGINS} ]; then
    declare -a plugins=()
else
    plugins=(${INSTALL_PLUGINS//,/ })
fi

# get length of an array
arraylength=${#plugins[@]}

# use for loop to read all values and indexes
for (( i=0; i<${arraylength}; i++ ));
do
    echo "-----START: Install ${plugins[$i]} plugin -----";
    bin/console eccube:composer:require ec-cube/${plugins[$i],,} --from=plugin_repos/${plugins[$i]}
    # Uncomment in production environment
    # composer config repositories.plugin_repos${plugins[$i],,} '{"type":"path","url":"./plugin_repos/'${plugins[$i]}'", "options": { "symlink": false }}'
    bin/console eccube:plugin:install --code=${plugins[$i]} --if-not-exists
    bin/console eccube:plugin:enable --code=${plugins[$i]}
    echo "-----END: Install ${plugins[$i]} plugin -----";
done
NMAKINO
投稿日時: 2024/9/13 14:08
対応状況: −−−
常連
登録日: 2018/9/21
居住地:
投稿: 34
Re: docker-compose使用時のプラグイン追加について
回答ありがとうございます。
一度こちらを試してみたいと思います
NMAKINO
投稿日時: 2024/9/13 18:29
対応状況: −−−
常連
登録日: 2018/9/21
居住地:
投稿: 34
Re: docker-compose使用時のプラグイン追加について
うまくいかないですね。
docker-compose を up すると

"allow-plugins": {
            "composer/*": true,
            "kylekatarnls/update-helper": true,
            "ec-cube/plugin-installer": true,
            "symfony/flex": true
        }


"ec-cube/plugin-installer": true,

ここがtrueの場合に、

12.10 In PluginInstaller.php line 48:
12.10                                                                                
12.10   You can not install the EC-CUBE plugin via `composer` command.               
12.10   Please use the `bin/console eccube:composer:require ec-cube/coupon42` inste  
12.10   ad.


このErrorが発生する状態ですね。

NMAKINO
投稿日時: 2024/9/15 0:30
対応状況: 解決済
常連
登録日: 2018/9/21
居住地:
投稿: 34
Re: docker-compose使用時のプラグイン追加について
先の設定でうまくいきました
Dockerfileを元々変更していたのですが、そこにミスがあったためうまく動作しないみたいでした。

解決したので、解決済に変更します
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は93,311名です
総投稿数は111,006件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2315
5
umebius
2085
6
yuh
1841
7
h_tanaka
1752
8
red
1574
9
mcontact
1462
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.