Skip to content

Commit 6e51bdb

Browse files
Merge pull request #149 from magento-commerce/develop
MCLOUD-13444: Release cloud docker - 1.4.2
2 parents 5472703 + b0a3153 commit 6e51bdb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+859
-101
lines changed

composer.json

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@
22
"name": "magento/magento-cloud-docker",
33
"description": "Magento Cloud Docker",
44
"type": "magento2-component",
5-
"version": "1.4.0",
5+
"version": "1.4.2",
66
"license": [
77
"OSL-3.0",
88
"AFL-3.0"
99
],
1010
"require": {
1111
"php": "^8.0",
1212
"ext-json": "*",
13-
"composer/composer": "^1.9 || ^2.0",
13+
"composer/composer": "^1.9 || ^2.8 || !=2.2.16",
1414
"composer/semver": "@stable",
15-
"illuminate/config": "^5.5||^8.77",
15+
"illuminate/config": "^8.77 || ^10.0 || ^11.0",
1616
"symfony/config": "^4.4 || ^5.1|| ^5.4 || ^6.4",
1717
"symfony/console": "^4.4 || ^5.1 || ^5.4 || ^6.4",
1818
"symfony/dependency-injection": "^4.4 || ^5.1|| ^5.4 || ^6.4",
@@ -26,9 +26,9 @@
2626
"codeception/module-rest": "^1.2 || ^3.0",
2727
"consolidation/robo": "^2.0 || ^3.0",
2828
"phpmd/phpmd": "@stable",
29-
"phpstan/phpstan": "^1.8",
30-
"phpunit/phpunit": "^9.5",
31-
"squizlabs/php_codesniffer": "^3.6"
29+
"phpstan/phpstan": "^1.8 || ^2.0",
30+
"phpunit/phpunit": "^10.0",
31+
"squizlabs/php_codesniffer": "^3.7"
3232
},
3333
"bin": [
3434
"bin/ece-docker"
@@ -55,7 +55,8 @@
5555
"test:integration": "phpunit --configuration tests/integration"
5656
},
5757
"config": {
58-
"sort-packages": true
58+
"sort-packages": true,
59+
"optimize-autoloader": true
5960
},
6061
"prefer-stable": true,
6162
"extra": {

images/php/8.2-cli/Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ ENV MAGENTO_RUN_MODE production
2929
ENV SENDMAIL_PATH /dev/null
3030
ENV PHPRC ${MAGENTO_ROOT}/php.ini
3131

32-
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl
32+
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl ftp
3333

3434
# Configure Node.js version
3535
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash
@@ -114,7 +114,8 @@ RUN docker-php-ext-install -j$(nproc) \
114114
tidy \
115115
xsl \
116116
zip \
117-
pcntl
117+
pcntl \
118+
ftp
118119

119120
RUN pecl install -o -f \
120121
gnupg \
@@ -190,4 +191,4 @@ WORKDIR ${MAGENTO_ROOT}
190191

191192
USER root
192193

193-
CMD ["bash"]
194+
CMD ["bash"]

images/php/8.2-fpm/Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ ENV UPLOAD_MAX_FILESIZE 64M
2222
ENV SENDMAIL_PATH /dev/null
2323
ENV PHPRC ${MAGENTO_ROOT}/php.ini
2424

25-
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl
25+
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl ftp
2626

2727
# Install dependencies
2828
RUN apt-get update \
@@ -89,7 +89,8 @@ RUN docker-php-ext-install -j$(nproc) \
8989
tidy \
9090
xsl \
9191
zip \
92-
pcntl
92+
pcntl \
93+
ftp
9394

9495
RUN pecl install -o -f \
9596
gnupg \
@@ -148,4 +149,4 @@ WORKDIR ${MAGENTO_ROOT}
148149

149150
USER root
150151

151-
CMD ["php-fpm", "-R"]
152+
CMD ["php-fpm", "-R"]

images/php/8.3-cli/Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ ENV MAGENTO_RUN_MODE production
2929
ENV SENDMAIL_PATH /dev/null
3030
ENV PHPRC ${MAGENTO_ROOT}/php.ini
3131

32-
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl
32+
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl ftp
3333

3434
# Configure Node.js version
3535
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash
@@ -114,7 +114,8 @@ RUN docker-php-ext-install -j$(nproc) \
114114
tidy \
115115
xsl \
116116
zip \
117-
pcntl
117+
pcntl \
118+
ftp
118119

119120
RUN pecl install -o -f \
120121
gnupg \
@@ -190,4 +191,4 @@ WORKDIR ${MAGENTO_ROOT}
190191

191192
USER root
192193

193-
CMD ["bash"]
194+
CMD ["bash"]

images/php/8.3-fpm/Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ ENV UPLOAD_MAX_FILESIZE 64M
2222
ENV SENDMAIL_PATH /dev/null
2323
ENV PHPRC ${MAGENTO_ROOT}/php.ini
2424

25-
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl
25+
ENV PHP_EXTENSIONS bcmath bz2 calendar exif gd gettext intl mysqli opcache pdo_mysql redis soap sockets sodium sysvmsg sysvsem sysvshm xsl zip pcntl ftp
2626

2727
# Install dependencies
2828
RUN apt-get update \
@@ -89,7 +89,8 @@ RUN docker-php-ext-install -j$(nproc) \
8989
tidy \
9090
xsl \
9191
zip \
92-
pcntl
92+
pcntl \
93+
ftp
9394

9495
RUN pecl install -o -f \
9596
gnupg \
@@ -148,4 +149,4 @@ WORKDIR ${MAGENTO_ROOT}
148149

149150
USER root
150151

151-
CMD ["php-fpm", "-R"]
152+
CMD ["php-fpm", "-R"]

images/php/8.4-cli/Dockerfile

Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
# This file is automatically generated. Do not edit directly. #
2+
FROM golang:1.15 AS builder
3+
4+
RUN if [ $(uname -m) = "x86_64" ]; then mailhog_arch="amd64"; else mailhog_arch="arm64"; fi \
5+
&& wget -O mhsendmail.tar.gz https://github.com/mailhog/mhsendmail/archive/refs/tags/v0.2.0.tar.gz \
6+
&& tar -xf mhsendmail.tar.gz \
7+
&& mkdir -p ./src/github.com/mailhog/ \
8+
&& mv ./mhsendmail-0.2.0 ./src/github.com/mailhog/mhsendmail \
9+
&& cd ./src/github.com/mailhog/mhsendmail/ \
10+
&& go get . \
11+
&& GOOS=linux GOARCH=${mailhog_arch} go build -o mhsendmail .
12+
13+
FROM php:8.4-cli
14+
15+
ARG COMPOSER_VERSION=2.8.4
16+
ARG MAGENTO_ROOT=/app
17+
ARG COMPOSER_ALLOW_SUPERUSER=1
18+
ARG COMPOSER_HOME=/composer
19+
ARG CRONTAB=""
20+
21+
ENV COMPOSER_MEMORY_LIMIT=-1
22+
ENV COMPOSER_ALLOW_SUPERUSER=${COMPOSER_ALLOW_SUPERUSER}
23+
ENV COMPOSER_HOME=${COMPOSER_HOME}
24+
ENV COMPOSER_CLEAR_CACHE=false
25+
ENV PHP_MEMORY_LIMIT=-1
26+
ENV PHP_VALIDATE_TIMESTAMPS=1
27+
ENV DEBUG=false
28+
ENV MAGENTO_RUN_MODE=production
29+
ENV SENDMAIL_PATH=/dev/null
30+
ENV PHPRC=${MAGENTO_ROOT}/php.ini
31+
32+
ENV PHP_EXTENSIONS="\
33+
bcmath \
34+
bz2 \
35+
calendar \
36+
exif \
37+
gd \
38+
gettext \
39+
intl \
40+
mysqli \
41+
opcache \
42+
pdo_mysql \
43+
redis \
44+
soap \
45+
sockets \
46+
sodium \
47+
sysvmsg \
48+
sysvsem \
49+
sysvshm \
50+
xsl \
51+
zip \
52+
pcntl \
53+
ftp"
54+
55+
# Configure Node.js version
56+
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash
57+
58+
# Install dependencies
59+
RUN apt-get update \
60+
&& apt-get upgrade -y \
61+
&& apt-get install -y --no-install-recommends \
62+
apt-utils \
63+
cron \
64+
git \
65+
mariadb-client \
66+
nano \
67+
nodejs \
68+
python3 \
69+
python3-pip \
70+
redis-tools \
71+
sendmail-bin \
72+
sendmail \
73+
sudo \
74+
unzip \
75+
vim \
76+
openssh-client \
77+
gnupg2 \
78+
ca-certificates \
79+
lsb-release \
80+
software-properties-common \
81+
libbz2-dev \
82+
libjpeg62-turbo-dev \
83+
libpng-dev \
84+
libfreetype6-dev \
85+
libgmp-dev \
86+
libgpgme11-dev \
87+
libicu-dev \
88+
libldap2-dev \
89+
libpcre3-dev \
90+
libpspell-dev \
91+
libtidy-dev \
92+
libxslt1-dev \
93+
libyaml-dev \
94+
libzip-dev \
95+
zip \
96+
python3-yaml \
97+
&& rm -rf /var/lib/apt/lists/*
98+
99+
# Install Python packages
100+
101+
102+
# Install Grunt
103+
RUN npm install -g grunt-cli
104+
105+
# Install MailHog
106+
COPY --from=builder /go/src/github.com/mailhog/mhsendmail/mhsendmail /usr/local/bin/
107+
RUN sudo chmod +x /usr/local/bin/mhsendmail
108+
109+
# Configure the gd library
110+
RUN docker-php-ext-configure \
111+
gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/
112+
RUN docker-php-ext-configure \
113+
opcache --enable-opcache
114+
115+
# Install required PHP extensions
116+
RUN docker-php-ext-install -j$(nproc) \
117+
bcmath \
118+
bz2 \
119+
calendar \
120+
exif \
121+
gd \
122+
gettext \
123+
gmp \
124+
intl \
125+
mysqli \
126+
opcache \
127+
pdo_mysql \
128+
shmop \
129+
soap \
130+
sockets \
131+
sysvmsg \
132+
sysvsem \
133+
sysvshm \
134+
tidy \
135+
xsl \
136+
zip \
137+
pcntl \
138+
ftp
139+
140+
RUN pecl install -o -f \
141+
gnupg \
142+
mailparse \
143+
msgpack \
144+
oauth \
145+
pcov \
146+
raphf \
147+
redis \
148+
xdebug-3.4.0 \
149+
xmlrpc-1.0.0RC3 \
150+
yaml \
151+
pspell
152+
153+
RUN curl -L https://packages.blackfire.io/gpg.key | gpg --dearmor > blackfire.io-archive-keyring.gpg \
154+
&& install -o root -g root -m 644 blackfire.io-archive-keyring.gpg /etc/apt/trusted.gpg.d/ \
155+
&& echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list \
156+
&& apt-get update \
157+
&& apt-get install blackfire-php \
158+
&& rm -rf /var/lib/apt/lists/*
159+
RUN if [ $(uname -m) = "x86_64" ]; then ldap_arch="x86_64-linux-gnu"; else ldap_arch="aarch64-linux-gnu"; fi \
160+
&& docker-php-ext-configure ldap --with-libdir=lib/${ldap_arch}
161+
RUN rm -f /usr/local/etc/php/conf.d/*sodium.ini \
162+
&& rm -f /usr/local/lib/php/extensions/*/*sodium.so \
163+
&& apt-get remove libsodium* -y \
164+
&& mkdir -p /tmp/libsodium \
165+
&& curl -sL https://github.com/jedisct1/libsodium/archive/1.0.18-RELEASE.tar.gz | tar xzf - -C /tmp/libsodium \
166+
&& cd /tmp/libsodium/libsodium-1.0.18-RELEASE/ \
167+
&& ./configure \
168+
&& make && make check \
169+
&& make install \
170+
&& cd / \
171+
&& rm -rf /tmp/libsodium \
172+
&& pecl install -o -f libsodium
173+
174+
ADD etc/php-cli.ini /usr/local/etc/php/conf.d/zz-magento.ini
175+
ADD etc/php-xdebug.ini /usr/local/etc/php/conf.d/zz-xdebug-settings.ini
176+
ADD etc/php-pcov.ini /usr/local/etc/php/conf.d/zz-pcov-settings.ini
177+
ADD etc/mail.ini /usr/local/etc/php/conf.d/zz-mail.ini
178+
ADD etc/php-gnupg.ini /usr/local/etc/php/conf.d/gnupg.ini
179+
180+
# Get composer installed to /usr/local/bin/composer
181+
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --version=${COMPOSER_VERSION} --filename=composer
182+
183+
ADD bin/* /usr/local/bin/
184+
185+
RUN groupadd -g 1000 www && useradd -g 1000 -u 1000 -d ${MAGENTO_ROOT} -s /bin/bash www
186+
187+
ADD docker-entrypoint.sh /docker-entrypoint.sh
188+
189+
RUN ["chmod", "+x", \
190+
"/docker-entrypoint.sh", \
191+
"/usr/local/bin/magento-installer", \
192+
"/usr/local/bin/magento-command", \
193+
"/usr/local/bin/mftf-command", \
194+
"/usr/local/bin/ece-command", \
195+
"/usr/local/bin/cloud-build", \
196+
"/usr/local/bin/cloud-deploy", \
197+
"/usr/local/bin/cloud-post-deploy", \
198+
"/usr/local/bin/run-cron", \
199+
"/usr/local/bin/run-hooks" \
200+
]
201+
202+
RUN mkdir -p ${MAGENTO_ROOT}
203+
204+
VOLUME ${MAGENTO_ROOT}
205+
206+
RUN chown -R www:www /usr/local /var/www /var/log /usr/local/etc/php/conf.d /etc/cron.d ${MAGENTO_ROOT} ${COMPOSER_HOME}
207+
RUN if [ ! -z "${CRONTAB}" ]; then echo "${CRONTAB}" > /etc/cron.d/magento && touch /var/log/cron.log ; fi
208+
209+
ENTRYPOINT ["/docker-entrypoint.sh"]
210+
211+
WORKDIR ${MAGENTO_ROOT}
212+
213+
USER root
214+
215+
CMD ["bash"]

0 commit comments

Comments
 (0)