forked from garymengcom/dnmp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
283 lines (233 loc) · 8 KB
/
install.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
#!/bin/sh
echo
echo "============================================"
echo "Install extensions from : install.sh"
echo "PHP version : ${PHP_VERSION}"
echo "Extra Extensions : ${PHP_EXTENSIONS}"
echo "Multicore Compilation : ${MC}"
echo "Work directory : ${PWD}"
echo "============================================"
echo
if [ "${ALPINE_REPOSITORIES}" != "" ]; then
sed -i "s/dl-cdn.alpinelinux.org/${ALPINE_REPOSITORIES}/g" /etc/apk/repositories
fi
if [ "${PHP_EXTENSIONS}" != "" ]; then
echo "---------- Install general dependencies ----------"
apk update && \
apk add --no-cache --virtual autoconf g++ libtool make curl-dev build-base libxml2-dev linux-headers
fi
if [ -z "${EXTENSIONS##*,pdo_mysql,*}" ]; then
echo "---------- Install pdo_mysql ----------"
docker-php-ext-install pdo_mysql
fi
if [ -z "${EXTENSIONS##*,zip,*}" ]; then
echo "---------- Install zip ----------"
docker-php-ext-install ${MC} zip
fi
if [ -z "${EXTENSIONS##*,pcntl,*}" ]; then
echo "---------- Install pcntl ----------"
docker-php-ext-install ${MC} pcntl
fi
if [ -z "${EXTENSIONS##*,mysqli,*}" ]; then
echo "---------- Install mysqli ----------"
docker-php-ext-install mysqli
fi
if [ -z "${EXTENSIONS##*,mbstring,*}" ]; then
echo "---------- Install mbstring ----------"
docker-php-ext-install mbstring
fi
if [ -z "${EXTENSIONS##*,exif,*}" ]; then
echo "---------- Install exif ----------"
docker-php-ext-install ${MC} exif
fi
if [ -z "${EXTENSIONS##*,bcmath,*}" ]; then
echo "---------- Install bcmath ----------"
docker-php-ext-install bcmath
fi
if [ -z "${EXTENSIONS##*,calendar,*}" ]; then
echo "---------- Install calendar ----------"
docker-php-ext-install ${MC} calendar
fi
if [ -z "${EXTENSIONS##*,zend_test,*}" ]; then
echo "---------- Install zend_test ----------"
docker-php-ext-install ${MC} zend_test
fi
if [ -z "${EXTENSIONS##*,opcache,*}" ]; then
echo "---------- Install opcache ----------"
docker-php-ext-install opcache
fi
if [ -z "${EXTENSIONS##*,sockets,*}" ]; then
echo "---------- Install sockets ----------"
docker-php-ext-install ${MC} sockets
fi
if [ -z "${EXTENSIONS##*,gettext,*}" ]; then
echo "---------- Install gettext ----------"
docker-php-ext-install ${MC} gettext
fi
if [ -z "${EXTENSIONS##*,shmop,*}" ]; then
echo "---------- Install shmop ----------"
docker-php-ext-install ${MC} shmop
fi
if [ -z "${EXTENSIONS##*,sysvmsg,*}" ]; then
echo "---------- Install sysvmsg ----------"
docker-php-ext-install ${MC} sysvmsg
fi
if [ -z "${EXTENSIONS##*,sysvsem,*}" ]; then
echo "---------- Install sysvsem ----------"
docker-php-ext-install ${MC} sysvsem
fi
if [ -z "${EXTENSIONS##*,sysvshm,*}" ]; then
echo "---------- Install sysvshm ----------"
docker-php-ext-install ${MC} sysvshm
fi
if [ -z "${EXTENSIONS##*,pdo_firebird,*}" ]; then
echo "---------- Install pdo_firebird ----------"
docker-php-ext-install ${MC} pdo_firebird
fi
if [ -z "${EXTENSIONS##*,pdo_dblib,*}" ]; then
echo "---------- Install pdo_dblib ----------"
docker-php-ext-install ${MC} pdo_dblib
fi
if [ -z "${EXTENSIONS##*,pdo_oci,*}" ]; then
echo "---------- Install pdo_oci ----------"
docker-php-ext-install ${MC} pdo_oci
fi
if [ -z "${EXTENSIONS##*,pdo_odbc,*}" ]; then
echo "---------- Install pdo_odbc ----------"
docker-php-ext-install ${MC} pdo_odbc
fi
if [ -z "${EXTENSIONS##*,pdo_pgsql,*}" ]; then
echo "---------- Install pdo_pgsql ----------"
apk --no-cache add postgresql-dev \
&& docker-php-ext-install ${MC} pdo_pgsql
fi
if [ -z "${EXTENSIONS##*,pgsql,*}" ]; then
echo "---------- Install pgsql ----------"
apk --no-cache add postgresql-dev \
&& docker-php-ext-install ${MC} pgsql
fi
if [ -z "${EXTENSIONS##*,oci8,*}" ]; then
echo "---------- Install oci8 ----------"
docker-php-ext-install ${MC} oci8
fi
if [ -z "${EXTENSIONS##*,odbc,*}" ]; then
echo "---------- Install odbc ----------"
docker-php-ext-install ${MC} odbc
fi
if [ -z "${EXTENSIONS##*,dba,*}" ]; then
echo "---------- Install dba ----------"
docker-php-ext-install ${MC} dba
fi
if [ -z "${EXTENSIONS##*,interbase,*}" ]; then
echo "---------- Install interbase ----------"
echo "Alpine linux do not support interbase/firebird!!!"
#docker-php-ext-install ${MC} interbase
fi
if [ -z "${EXTENSIONS##*,gd,*}" ]; then
echo "---------- Install gd ----------"
apk add --no-cache freetype-dev libjpeg-turbo-dev libpng-dev \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install gd
fi
if [ -z "${EXTENSIONS##*,intl,*}" ]; then
echo "---------- Install intl ----------"
apk add --no-cache icu-dev
docker-php-ext-install ${MC} intl
fi
if [ -z "${EXTENSIONS##*,bz2,*}" ]; then
echo "---------- Install bz2 ----------"
apk add --no-cache bzip2-dev
docker-php-ext-install ${MC} bz2
fi
if [ -z "${EXTENSIONS##*,soap,*}" ]; then
echo "---------- Install soap ----------"
docker-php-ext-install ${MC} soap
fi
if [ -z "${EXTENSIONS##*,xsl,*}" ]; then
echo "---------- Install xsl ----------"
apk add --no-cache libxslt-dev
docker-php-ext-install ${MC} xsl
fi
if [ -z "${EXTENSIONS##*,xmlrpc,*}" ]; then
echo "---------- Install xmlrpc ----------"
apk add --no-cache libxslt-dev
docker-php-ext-install ${MC} xmlrpc
fi
if [ -z "${EXTENSIONS##*,wddx,*}" ]; then
echo "---------- Install wddx ----------"
apk add --no-cache libxslt-dev
docker-php-ext-install ${MC} wddx
fi
if [ -z "${EXTENSIONS##*,curl,*}" ]; then
echo "---------- Install curl ----------"
docker-php-ext-install curl
fi
if [ -z "${EXTENSIONS##*,readline,*}" ]; then
echo "---------- Install readline ----------"
apk add --no-cache readline-dev
apk add --no-cache libedit-dev
docker-php-ext-install ${MC} readline
fi
if [ -z "${EXTENSIONS##*,snmp,*}" ]; then
echo "---------- Install snmp ----------"
apk add --no-cache net-snmp-dev
docker-php-ext-install ${MC} snmp
fi
if [ -z "${EXTENSIONS##*,pspell,*}" ]; then
echo "---------- Install pspell ----------"
apk add --no-cache aspell-dev
apk add --no-cache aspell-en
docker-php-ext-install ${MC} pspell
fi
if [ -z "${EXTENSIONS##*,recode,*}" ]; then
echo "---------- Install recode ----------"
apk add --no-cache recode-dev
docker-php-ext-install ${MC} recode
fi
if [ -z "${EXTENSIONS##*,tidy,*}" ]; then
echo "---------- Install tidy ----------"
apk add --no-cache tidyhtml-dev=5.2.0-r1 --repository http://${ALPINE_REPOSITORIES}/alpine/v3.6/community
docker-php-ext-install ${MC} tidy
fi
if [ -z "${EXTENSIONS##*,gmp,*}" ]; then
echo "---------- Install gmp ----------"
apk add --no-cache gmp-dev
docker-php-ext-install ${MC} gmp
fi
if [ -z "${EXTENSIONS##*,imap,*}" ]; then
echo "---------- Install imap ----------"
apk add --no-cache imap-dev
docker-php-ext-configure imap --with-imap --with-imap-ssl
docker-php-ext-install ${MC} imap
fi
if [ -z "${EXTENSIONS##*,ldap,*}" ]; then
echo "---------- Install ldap ----------"
apk add --no-cache ldb-dev
apk add --no-cache openldap-dev
docker-php-ext-install ${MC} ldap
fi
if [ -z "${EXTENSIONS##*,imagick,*}" ]; then
echo "---------- Install imagick ----------"
apk add --no-cache file-dev
apk add --no-cache imagemagick-dev
printf "\n" | pecl install imagick-3.4.4
docker-php-ext-enable imagick
fi
if [ -z "${EXTENSIONS##*,xhprof,*}" ]; then
echo "---------- Install xhprof ----------"
printf "\n" | pecl install channel://pecl.php.net/xhprof-0.9.4
docker-php-ext-enable xhprof
echo "---------- Install graphviz ----------"
printf "\n" | apk add --no-cache graphviz
docker-php-ext-enable yaf graphviz
fi
if [ -z "${EXTENSIONS##*,grpc,*}" ]; then
echo "---------- Install grpc ----------"
printf "\n" | pecl install https://pecl.php.net/get/grpc-1.20.0.tgz
docker-php-ext-enable grpc
fi
if [ -z "${EXTENSIONS##*,protobuf,*}" ]; then
echo "---------- Install protobuf ----------"
printf "\n" | pecl install https://pecl.php.net/get/protobuf-3.7.1.tgz
docker-php-ext-enable protobuf
fi