質問編集履歴
1
問題を絞って表現し直しました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Docker、WEBサーバーからffmpegのパスが見えません
|
test
CHANGED
@@ -1,18 +1,22 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
lara
|
3
|
+
laravel PHPからffmpegを実行したいです。
|
4
|
-
|
5
|
-
(docker Version 18.03.1-ce-win65、Ubuntu 16.04.3、laravel5.6、nginx/1.13.12、php7.2.4)
|
6
4
|
|
7
5
|
|
8
6
|
|
7
|
+
Windows10、Dockerで、Ubuntu 16.04.3、nginx/1.13.12、php7.2.4です。
|
8
|
+
|
9
|
+
|
10
|
+
|
9
|
-
workspaceにffmpegをインストールし、
|
11
|
+
Dockerのworkspaceにffmpegをインストールし、Laravel-FFMpegを使って、phpからffmpegを実行します。
|
10
12
|
|
11
13
|
https://github.com/pascalbaljetmedia/laravel-ffmpeg
|
12
14
|
|
13
15
|
|
14
16
|
|
17
|
+
### 該当のソースコード
|
18
|
+
|
15
|
-
|
19
|
+
powershellでdocker-compose exec workspace bashし、which ffmpegを実行するとパスが見えます。
|
16
20
|
|
17
21
|
```
|
18
22
|
|
@@ -20,115 +24,49 @@
|
|
20
24
|
|
21
25
|
/usr/local/bin/ffmpeg
|
22
26
|
|
23
|
-
root@2a8f4fad3301:/var/www# which ffprobe
|
24
|
-
|
25
|
-
/usr/local/bin/ffprobe
|
26
27
|
|
27
28
|
|
29
|
+
```
|
30
|
+
|
31
|
+
### 発生している問題・エラーメッセージ
|
32
|
+
|
33
|
+
しかし、PHPで上でwhich ffmpegを実行してもパスが得られません。
|
34
|
+
|
35
|
+
```
|
36
|
+
|
37
|
+
var_dump(exec('which ffmpeg'));
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
string(0) ""
|
28
42
|
|
29
43
|
```
|
30
44
|
|
31
45
|
|
32
46
|
|
33
|
-
|
47
|
+
PHP上からはffmpegが見えていないということかと思うのですが、対応方法が分かりません。
|
34
48
|
|
35
|
-
|
49
|
+
アドバイスいただけますと幸いです。
|
36
50
|
|
37
|
-
'ffprobe.binaries' => '/usr/local/bin/ffprobe',
|
38
|
-
|
39
|
-
```
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
### 該当のソースコード
|
46
|
-
|
47
|
-
ファイルをオープンするだけの下記のプログラムを実行します。
|
48
|
-
|
49
|
-
```
|
50
|
-
|
51
|
-
FFMpeg::fromDisk('local')->open(test.wav);
|
52
|
-
|
53
|
-
```
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
### 発生している問題・エラーメッセージ
|
58
|
-
|
59
|
-
|
51
|
+
よろしくお願いします。
|
60
|
-
|
61
|
-
```ここに言語名を入力
|
62
|
-
|
63
|
-
"Unable to load FFProbe"
|
64
|
-
|
65
|
-
```
|
66
|
-
|
67
|
-
```ここに言語名を入力
|
68
|
-
|
69
|
-
"Executable not found, proposed : /usr/local/bin/ffprobe"
|
70
|
-
|
71
|
-
```
|
72
52
|
|
73
53
|
|
74
54
|
|
75
55
|
### 試したこと
|
76
56
|
|
77
|
-
|
78
|
-
|
79
|
-
ネットで調べて、
|
80
|
-
|
81
|
-
1./usr/local/bin/ffprobe、'/usr/local/bin/ffmpeg'をchmod777する
|
82
|
-
|
83
|
-
|
57
|
+
phpから/usr/local/binにパスが通っているか確認。
|
84
|
-
|
85
|
-
を行いましたが状況は変わりません。
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
ただ、 冒頭の通りworkspace上で
|
90
|
-
|
91
|
-
```ここに言語名を入力
|
92
|
-
|
93
|
-
which ffprobe
|
94
58
|
|
95
59
|
```
|
96
|
-
|
97
|
-
を実行するとパスが得られますが、
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
PHPで下記を実行すると、パスが返ってきませんでした、
|
102
|
-
|
103
|
-
```ここに言語名を入力
|
104
|
-
|
105
|
-
var_dump(exec('which ffprobe'));
|
106
|
-
|
107
|
-
var_dump(is_file(exec('which ffprobe')));
|
108
|
-
|
109
|
-
var_dump(is_executable(exec('which ffprobe')));
|
110
60
|
|
111
61
|
var_dump(getenv('PATH'));
|
112
62
|
|
113
63
|
|
114
|
-
|
115
|
-
string(0) ""
|
116
|
-
|
117
|
-
bool(false)
|
118
|
-
|
119
|
-
bool(false)
|
120
64
|
|
121
65
|
string(60) "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
|
122
66
|
|
123
67
|
```
|
124
68
|
|
125
69
|
|
126
|
-
|
127
|
-
PHP上からは見えていないということかと思うのですが、対応方法が分かりません。
|
128
|
-
|
129
|
-
アドバイスいただけますと幸いです。
|
130
|
-
|
131
|
-
よろしくお願いします。
|
132
70
|
|
133
71
|
|
134
72
|
|