-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathtest-image.Dockerfile
More file actions
64 lines (40 loc) · 1.59 KB
/
Copy pathtest-image.Dockerfile
File metadata and controls
64 lines (40 loc) · 1.59 KB
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
ARG PHP_VERSION=8.4
ARG SHOPWARE_BUILD_SOURCE="branch"
FROM ghcr.io/shopware/docker-base:${PHP_VERSION}-nginx-otel AS base-image
FROM ghcr.io/shopware/shopware-cli:latest-php-${PHP_VERSION} AS shopware-cli
FROM shopware-cli AS checkout-tag
ARG SHOPWARE_VERSION
RUN shopware-cli project create /src ${SHOPWARE_VERSION#v} --verbose --no-audit
FROM shopware-cli AS checkout-branch
ARG SHOPWARE_VERSION
ARG COMPOSER_ROOT_VERSION="6.7.9999999-dev"
ENV COMPOSER_ROOT_VERSION=${COMPOSER_ROOT_VERSION}
RUN shopware-cli project create /src dev-${SHOPWARE_VERSION} --verbose --no-audit
FROM shopware-cli AS checkout-local
ARG COMPOSER_ROOT_VERSION="6.7.9999999-dev"
ENV COMPOSER_ROOT_VERSION=${COMPOSER_ROOT_VERSION}
COPY . /src
FROM checkout-${SHOPWARE_BUILD_SOURCE} AS prepare
SHELL ["/usr/bin/env", "bash", "-c"]
WORKDIR /src
RUN --mount=type=cache,target=/root/.composer \
--mount=type=cache,target=/root/.npm <<EOF
set -euxo pipefail
composer require --ignore-platform-reqs --no-interaction "shopware/deployment-helper:*"
composer dump-autoload
EOF
FROM prepare AS build
SHELL ["/usr/bin/env", "bash", "-c"]
WORKDIR /src
RUN --mount=type=cache,target=/root/.composer \
--mount=type=cache,target=/root/.npm <<EOF
set -euxo pipefail
shopware-cli project ci . --with-dev-dependencies
EOF
FROM base-image AS final
COPY --from=build --chown=82:82 /src /var/www/html
COPY --chown=82:82 <<EOF /var/www/html/install.lock
# Skip installer
EOF
ADD --chown=82:82 https://github.com/shopware/web-recovery/releases/latest/download/shopware-installer.phar.php /var/www/html/public/shopware-installer.phar.php
FROM final