Skip to content

Commit 296d896

Browse files
committed
Port nextcloud to ubuntu base
1 parent e3cf74e commit 296d896

File tree

2 files changed

+100
-90
lines changed

2 files changed

+100
-90
lines changed

Dockerfile

Lines changed: 50 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,68 @@
1-
# syntax=docker/dockerfile:1
2-
3-
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.20
1+
FROM ghcr.io/pagdot/baseimage-ubuntu-nginx:noble
42

53
# set version label
64
ARG BUILD_DATE
75
ARG VERSION
8-
ARG NEXTCLOUD_RELEASE
9-
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
10-
LABEL maintainer="aptalca"
6+
ARG NEXTCLOUD_RELEASE=29.0.7
7+
LABEL build_version="pagdot version:- ${VERSION} Build-date:- ${BUILD_DATE}"
8+
LABEL maintainer="pagdot"
119

1210
# environment settings
13-
ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so"
11+
ENV NEXTCLOUD_PATH="/config/www/nextcloud"
1412

1513
RUN \
1614
echo "**** install runtime packages ****" && \
17-
apk add --no-cache \
15+
apt update && \
16+
apt install -y \
17+
curl \
1818
ffmpeg \
19-
gnu-libiconv \
2019
imagemagick \
21-
imagemagick-heic \
22-
imagemagick-pdf \
23-
imagemagick-svg \
20+
lbzip2 \
2421
libxml2 \
25-
php83-apcu \
26-
php83-bcmath \
27-
php83-bz2 \
28-
php83-dom \
29-
php83-exif \
30-
php83-ftp \
31-
php83-gd \
32-
php83-gmp \
33-
php83-imap \
34-
php83-intl \
35-
php83-ldap \
36-
php83-opcache \
37-
php83-pcntl \
38-
php83-pdo_mysql \
39-
php83-pdo_pgsql \
40-
php83-pdo_sqlite \
41-
php83-pecl-imagick \
42-
php83-pecl-mcrypt \
43-
php83-pecl-memcached \
44-
php83-pecl-smbclient \
45-
php83-pgsql \
46-
php83-posix \
47-
php83-redis \
48-
php83-sodium \
49-
php83-sqlite3 \
50-
php83-sysvsem \
51-
php83-xmlreader \
22+
php8.3-apcu \
23+
php8.3-bcmath \
24+
php8.3-bz2 \
25+
php8.3-ctype \
26+
php8.3-curl \
27+
php8.3-dom \
28+
php8.3-exif \
29+
php8.3-fileinfo \
30+
php8.3-ftp \
31+
php8.3-gd \
32+
php8.3-gmp \
33+
php8.3-iconv \
34+
php8.3-imagick \
35+
php8.3-imap \
36+
php8.3-intl \
37+
php8.3-ldap \
38+
php8.3-mysql \
39+
php8.3-mbstring \
40+
php8.3-opcache \
41+
php8.3-pgsql \
42+
php8.3-phar \
43+
php8.3-posix \
44+
php8.3-redis \
45+
php8.3-simplexml \
46+
php8.3-sqlite3 \
47+
php8.3-xml \
48+
php8.3-xmlreader \
49+
php8.3-xmlwriter \
50+
php8.3-zip \
5251
rsync \
5352
samba-client \
5453
util-linux \
5554
sudo && \
5655
echo "**** configure php-fpm to pass env vars ****" && \
57-
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php83/php-fpm.d/www.conf && \
58-
grep -qxF 'clear_env = no' /etc/php83/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php83/php-fpm.d/www.conf && \
59-
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php83/php-fpm.conf && \
56+
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php/8.3/fpm/pool.d/www.conf && \
57+
grep -qxF 'clear_env = no' /etc/php/8.3/fpm/pool.d/www.conf || echo 'clear_env = no' >> /etc/php/8.3/fpm/pool.d/www.conf && \
58+
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php/8.3/fpm/php-fpm.conf && \
6059
echo "**** configure php for nextcloud ****" && \
6160
{ \
6261
echo 'apc.enable_cli=1'; \
63-
} >> /etc/php83/conf.d/apcu.ini && \
62+
} >> /etc/php/8.3/fpm/conf.d/apcu.ini && \
63+
{ \
64+
echo 'apc.enable_cli=1'; \
65+
} >> /etc/php/8.3/cli/conf.d/apcu.ini && \
6466
{ \
6567
echo 'opcache.enable=1'; \
6668
echo 'opcache.interned_strings_buffer=32'; \
@@ -70,7 +72,7 @@ RUN \
7072
echo 'opcache.revalidate_freq=60'; \
7173
echo 'opcache.jit=1255'; \
7274
echo 'opcache.jit_buffer_size=128M'; \
73-
} >> "/etc/php83/conf.d/00_opcache.ini" && \
75+
} >> "/etc/php/8.3/fpm/conf.d/91_opcache.ini" && \
7476
{ \
7577
echo 'memory_limit=512M'; \
7678
echo 'upload_max_filesize=512M'; \
@@ -79,7 +81,7 @@ RUN \
7981
echo 'max_execution_time=300'; \
8082
echo 'output_buffering=0'; \
8183
echo 'always_populate_raw_post_data=-1'; \
82-
} >> "/etc/php83/conf.d/nextcloud.ini" && \
84+
} >> "/etc/php/8.3/fpm/conf.d/nextcloud.ini" && \
8385
echo "**** install nextcloud ****" && \
8486
mkdir -p \
8587
/app/www/src/ && \
@@ -98,7 +100,10 @@ RUN \
98100
chmod +x /app/www/src/occ && \
99101
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
100102
echo "**** cleanup ****" && \
103+
apt-get autoclean && \
101104
rm -rf \
105+
/var/lib/apt/lists/* \
106+
/var/tmp/* \
102107
/tmp/*
103108

104109
# copy local files

Dockerfile.aarch64

Lines changed: 50 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,68 @@
1-
# syntax=docker/dockerfile:1
2-
3-
FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.20
1+
FROM ghcr.io/pagdot/baseimage-ubuntu-nginx:noble
42

53
# set version label
64
ARG BUILD_DATE
75
ARG VERSION
8-
ARG NEXTCLOUD_RELEASE
9-
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
10-
LABEL maintainer="aptalca"
6+
ARG NEXTCLOUD_RELEASE=29.0.7
7+
LABEL build_version="pagdot version:- ${VERSION} Build-date:- ${BUILD_DATE}"
8+
LABEL maintainer="pagdot"
119

1210
# environment settings
13-
ENV LD_PRELOAD="/usr/lib/preloadable_libiconv.so"
11+
ENV NEXTCLOUD_PATH="/config/www/nextcloud"
1412

1513
RUN \
1614
echo "**** install runtime packages ****" && \
17-
apk add --no-cache \
15+
apt update && \
16+
apt install -y \
17+
curl \
1818
ffmpeg \
19-
gnu-libiconv \
2019
imagemagick \
21-
imagemagick-heic \
22-
imagemagick-pdf \
23-
imagemagick-svg \
20+
lbzip2 \
2421
libxml2 \
25-
php83-apcu \
26-
php83-bcmath \
27-
php83-bz2 \
28-
php83-dom \
29-
php83-exif \
30-
php83-ftp \
31-
php83-gd \
32-
php83-gmp \
33-
php83-imap \
34-
php83-intl \
35-
php83-ldap \
36-
php83-opcache \
37-
php83-pcntl \
38-
php83-pdo_mysql \
39-
php83-pdo_pgsql \
40-
php83-pdo_sqlite \
41-
php83-pecl-imagick \
42-
php83-pecl-mcrypt \
43-
php83-pecl-memcached \
44-
php83-pecl-smbclient \
45-
php83-pgsql \
46-
php83-posix \
47-
php83-redis \
48-
php83-sodium \
49-
php83-sqlite3 \
50-
php83-sysvsem \
51-
php83-xmlreader \
22+
php8.3-apcu \
23+
php8.3-bcmath \
24+
php8.3-bz2 \
25+
php8.3-ctype \
26+
php8.3-curl \
27+
php8.3-dom \
28+
php8.3-exif \
29+
php8.3-fileinfo \
30+
php8.3-ftp \
31+
php8.3-gd \
32+
php8.3-gmp \
33+
php8.3-iconv \
34+
php8.3-imagick \
35+
php8.3-imap \
36+
php8.3-intl \
37+
php8.3-ldap \
38+
php8.3-mysql \
39+
php8.3-mbstring \
40+
php8.3-opcache \
41+
php8.3-pgsql \
42+
php8.3-phar \
43+
php8.3-posix \
44+
php8.3-redis \
45+
php8.3-simplexml \
46+
php8.3-sqlite3 \
47+
php8.3-xml \
48+
php8.3-xmlreader \
49+
php8.3-xmlwriter \
50+
php8.3-zip \
5251
rsync \
5352
samba-client \
5453
util-linux \
5554
sudo && \
5655
echo "**** configure php-fpm to pass env vars ****" && \
57-
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php83/php-fpm.d/www.conf && \
58-
grep -qxF 'clear_env = no' /etc/php83/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php83/php-fpm.d/www.conf && \
59-
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php83/php-fpm.conf && \
56+
sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php/8.3/fpm/pool.d/www.conf && \
57+
grep -qxF 'clear_env = no' /etc/php/8.3/fpm/pool.d/www.conf || echo 'clear_env = no' >> /etc/php/8.3/fpm/pool.d/www.conf && \
58+
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php/8.3/fpm/php-fpm.conf && \
6059
echo "**** configure php for nextcloud ****" && \
6160
{ \
6261
echo 'apc.enable_cli=1'; \
63-
} >> /etc/php83/conf.d/apcu.ini && \
62+
} >> /etc/php/8.3/fpm/conf.d/apcu.ini && \
63+
{ \
64+
echo 'apc.enable_cli=1'; \
65+
} >> /etc/php/8.1/cli/conf.d/apcu.ini && \
6466
{ \
6567
echo 'opcache.enable=1'; \
6668
echo 'opcache.interned_strings_buffer=32'; \
@@ -70,7 +72,7 @@ RUN \
7072
echo 'opcache.revalidate_freq=60'; \
7173
echo 'opcache.jit=1255'; \
7274
echo 'opcache.jit_buffer_size=128M'; \
73-
} >> "/etc/php83/conf.d/00_opcache.ini" && \
75+
} >> "/etc/php/8.3/fpm/conf.d/91_opcache.ini" && \
7476
{ \
7577
echo 'memory_limit=512M'; \
7678
echo 'upload_max_filesize=512M'; \
@@ -79,7 +81,7 @@ RUN \
7981
echo 'max_execution_time=300'; \
8082
echo 'output_buffering=0'; \
8183
echo 'always_populate_raw_post_data=-1'; \
82-
} >> "/etc/php83/conf.d/nextcloud.ini" && \
84+
} >> "/etc/php/8.3/fpm/conf.d/nextcloud.ini" && \
8385
echo "**** install nextcloud ****" && \
8486
mkdir -p \
8587
/app/www/src/ && \
@@ -98,7 +100,10 @@ RUN \
98100
chmod +x /app/www/src/occ && \
99101
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
100102
echo "**** cleanup ****" && \
103+
apt-get autoclean && \
101104
rm -rf \
105+
/var/lib/apt/lists/* \
106+
/var/tmp/* \
102107
/tmp/*
103108

104109
# copy local files

0 commit comments

Comments
 (0)