-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathDockerfile.multiarch
More file actions
65 lines (50 loc) · 3.33 KB
/
Copy pathDockerfile.multiarch
File metadata and controls
65 lines (50 loc) · 3.33 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
65
FROM owncloud/ubuntu:22.04@sha256:1d1f5d61aa08ca5a2c422b37835608405014388a1603c9d16e1186e8535cca2b
LABEL maintainer="ownCloud GmbH <devops@owncloud.com>" \
org.opencontainers.image.authors="ownCloud DevOps <devops@owncloud.com>" \
org.opencontainers.image.title="ownCloud CI PHP" \
org.opencontainers.image.url="https://hub.docker.com/r/owncloudci/php" \
org.opencontainers.image.source="https://github.com/owncloud-ci/php" \
org.opencontainers.image.documentation="https://github.com/owncloud-ci/php"
VOLUME ["/var/www/owncloud"]
ENV ORACLE_HOME=/usr/lib/oracle/12.2/client64
ENV LD_LIBRARY_PATH=/usr/lib/oracle/12.2/client64/lib/${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
ENV APACHE_LOGGING_PATH=/dev/stdout
ARG RETRY_VERSION
ARG TARGETPLATFORM
# renovate: datasource=github-releases depName=owncloud-ci/retry
ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}"
RUN curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \
chmod 755 /usr/local/bin/retry
RUN apt-get update -y && \
apt-get install -y software-properties-common language-pack-en-base && \
LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php && \
LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/apache2
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get install -y apache2 libapache2-mod-php8.3 libxml2-utils git-core unzip wget fontconfig libaio1 python2 php8.3 php8.3-dev php8.3-xml php8.3-mbstring php8.3-curl php8.3-gd php8.3-zip php8.3-intl php8.3-sqlite3 php8.3-mysql php8.3-pgsql php8.3-soap php8.3-phpdbg php8.3-ldap php8.3-gmp php8.3-imap php8.3-redis php8.3-memcached php8.3-imagick php8.3-smbclient php8.3-apcu php8.3-ast rsync libimage-exiftool-perl && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /etc/apache2/sites-available/default-ssl.conf && \
a2enmod rewrite headers env dir mime ssl expires dav dav_fs
RUN update-alternatives --set php /usr/bin/php8.3
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
curl -sSo oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb https://minio.owncloud.com/packages/oracle/oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb && \
dpkg -i oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb && \
rm oracle-instantclient12.2-basic_12.2.0.1.0-2_amd64.deb; \
fi
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
curl -sSo oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb https://minio.owncloud.com/packages/oracle/oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb && \
dpkg -i oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb && \
rm oracle-instantclient12.2-sqlplus_12.2.0.1.0-2_amd64.deb; \
fi
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
curl -sSo oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb https://minio.owncloud.com/packages/oracle/oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb && \
dpkg -i oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb && \
rm oracle-instantclient12.2-devel_12.2.0.1.0-2_amd64.deb; \
fi
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \
ln -s /usr/include/oracle/12.2/client64 /usr/lib/oracle/12.2/client64/include && \
echo "instantclient,/usr/lib/oracle/12.2/client64/lib" | pecl install oci8-3.4.1; \
fi
COPY overlay /
WORKDIR /var/www/owncloud