Compare commits

..

11 Commits

Author SHA1 Message Date
Simon L
2fbebaae5f also add quotes to talk and collabora
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-03 14:51:56 +01:00
Simon L
be7a1910ad increase to v4.3.1
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-03 11:57:41 +01:00
Simon L
3c69aac6ca Merge pull request #1915 from nextcloud/revert-1887-enh/490/multiarch-images
Revert "get multiarch repodigest"
2023-02-03 11:54:19 +01:00
Simon L
39415276db add list manifest
Signed-off-by: Simon L <szaimen@e.mail.de>

Co-authored-by: Zoey <zoey@z0ey.de>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2023-02-03 11:38:42 +01:00
Simon L
6533018c6f ports 8081 needs to be expose for the talk container
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-03 10:48:30 +01:00
Simon L
cfbfe0438c Merge pull request #1912 from nextcloud/enh/noid/update-helm-chart
Helm Chart updates
2023-02-02 19:43:39 +01:00
Simon L
f62d3ab0f7 Merge pull request #1893 from nextcloud/enh/noid/adjust-yes-values
adjust variables correctly
2023-02-02 19:17:31 +01:00
Simon L
5a959e9b07 Revert "get multiarch repodigest"
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-02 18:27:50 +01:00
Simon L
12358321d1 re-add initContainers
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-02 17:37:19 +01:00
Simon L
91a977e09e Helm Chart updates
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-02 15:45:27 +01:00
Simon L
07aaf1fab4 adjust variables correctly
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-02-02 12:20:30 +01:00
21 changed files with 193 additions and 32 deletions

View File

@@ -40,6 +40,8 @@ spec:
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-clamav:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-clamav
ports:
- containerPort: 3310
volumeMounts:
- mountPath: /var/lib/clamav
name: nextcloud-aio-clamav

View File

@@ -0,0 +1,18 @@
{{- if eq .Values.CLAMAV_ENABLED "yes" }}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-clamav
name: nextcloud-aio-clamav
spec:
ports:
- name: "3310"
port: 3310
targetPort: 3310
selector:
io.kompose.service: nextcloud-aio-clamav
{{- end }}

View File

@@ -44,6 +44,8 @@ spec:
value: --o:ssl.enable=false --o:ssl.termination=true --o:logging.level=warning --o:home_mode.enable=true {{ .Values.COLLABORA_SECCOMP_POLICY }} --o:remote_font_config.url=https://{{ .Values.NC_DOMAIN }}/apps/richdocuments/settings/fonts.json
image: nextcloud/aio-collabora:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-collabora
ports:
- containerPort: 9980
volumeMounts:
- mountPath: /opt/cool/systemplate/tmpfonts
name: nextcloud-aio-collabora-fonts

View File

@@ -0,0 +1,18 @@
{{- if eq .Values.COLLABORA_ENABLED "yes" }}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-collabora
name: nextcloud-aio-collabora
spec:
ports:
- name: "9980"
port: 9980
targetPort: 9980
selector:
io.kompose.service: nextcloud-aio-collabora
{{- end }}

View File

@@ -25,10 +25,10 @@ spec:
- name: init-volumes
image: alpine
command:
- sh
- -c
- "chmod 777 /nextcloud-aio-database /nextcloud-aio-database-dump
&& chown 999:999 /nextcloud-aio-database"
- chown
- 999:999
- /nextcloud-aio-database
- /nextcloud-aio-database-dump
volumeMounts:
- name: nextcloud-aio-database-dump
mountPath: /nextcloud-aio-database-dump
@@ -48,6 +48,8 @@ spec:
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-postgresql:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-database
ports:
- containerPort: 5432
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: nextcloud-aio-database

View File

@@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-database
name: nextcloud-aio-database
spec:
ports:
- name: "5432"
port: 5432
targetPort: 5432
selector:
io.kompose.service: nextcloud-aio-database

View File

@@ -42,6 +42,8 @@ spec:
value: single-node
image: nextcloud/aio-fulltextsearch:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-fulltextsearch
ports:
- containerPort: 9200
volumeMounts:
- mountPath: /usr/share/elasticsearch/data
name: nextcloud-aio-elasticsearch

View File

@@ -0,0 +1,18 @@
{{- if eq .Values.FULLTEXTSEARCH_ENABLED "yes" }}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-fulltextsearch
name: nextcloud-aio-fulltextsearch
spec:
ports:
- name: "9200"
port: 9200
targetPort: 9200
selector:
io.kompose.service: nextcloud-aio-fulltextsearch
{{- end }}

View File

@@ -28,4 +28,6 @@ spec:
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-imaginary:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-imaginary
ports:
- containerPort: 9000
{{- end }}

View File

@@ -0,0 +1,18 @@
{{- if eq .Values.IMAGINARY_ENABLED "yes" }}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-imaginary
name: nextcloud-aio-imaginary
spec:
ports:
- name: "9000"
port: 9000
targetPort: 9000
selector:
io.kompose.service: nextcloud-aio-imaginary
{{- end }}

View File

@@ -117,6 +117,9 @@ spec:
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
image: nextcloud/aio-nextcloud:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-nextcloud
ports:
- containerPort: 9000
- containerPort: 7867
volumeMounts:
- mountPath: /var/www/html
name: nextcloud-aio-nextcloud

View File

@@ -0,0 +1,19 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-nextcloud
name: nextcloud-aio-nextcloud
spec:
ports:
- name: "9000"
port: 9000
targetPort: 9000
- name: "7867"
port: 7867
targetPort: 7867
selector:
io.kompose.service: nextcloud-aio-nextcloud

View File

@@ -44,6 +44,8 @@ spec:
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-onlyoffice:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-onlyoffice
ports:
- containerPort: 80
volumeMounts:
- mountPath: /var/lib/onlyoffice
name: nextcloud-aio-onlyoffice

View File

@@ -0,0 +1,18 @@
{{- if eq .Values.ONLYOFFICE_ENABLED "yes" }}
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-onlyoffice
name: nextcloud-aio-onlyoffice
spec:
ports:
- name: "80"
port: 80
targetPort: 80
selector:
io.kompose.service: nextcloud-aio-onlyoffice
{{- end }}

View File

@@ -39,6 +39,8 @@ spec:
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-redis:20230124_100035-{{ .Values.IMAGE_TAG }}
name: nextcloud-aio-redis
ports:
- containerPort: 6379
volumeMounts:
- mountPath: /data
name: nextcloud-aio-redis

View File

@@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
labels:
io.kompose.service: nextcloud-aio-redis
name: nextcloud-aio-redis
spec:
ports:
- name: "6379"
port: 6379
targetPort: 6379
selector:
io.kompose.service: nextcloud-aio-redis

View File

@@ -52,6 +52,7 @@ cat << EOL > /tmp/initcontainers
volumeMountsInitContainer:
EOL
cat << EOL > /tmp/initcontainers.database
initContainers:
- name: init-volumes
image: alpine
command:
@@ -148,6 +149,7 @@ sed -i 's|=|: |' /tmp/sample.conf
sed -i 's|= |: |' /tmp/sample.conf
sed -i '/^NEXTCLOUD_DATADIR/d' /tmp/sample.conf
sed -i '/^NEXTCLOUD_MOUNT/d' /tmp/sample.conf
sed -i '/_ENABLED.*/s/ yes / "yes" /' /tmp/sample.conf
sed -i 's|^NEXTCLOUD_TRUSTED_CACERTS_DIR: .*|NEXTCLOUD_TRUSTED_CACERTS_DIR: # Setting this to any value allows to automatically import root certificates into the Nextcloud container|' /tmp/sample.conf
# shellcheck disable=SC2129
echo 'STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes' >> /tmp/sample.conf

View File

@@ -59,10 +59,10 @@ do
sed -i "s|$variable|\${$sole_variable}|g" containers.yml
done
sed -i 's|_ENABLED=|_ENABLED=no # Setting this to "yes" enables the option in Nextcloud automatically.|' sample.conf
sed -i 's|CLAMAV_ENABLED=no.*|CLAMAV_ENABLED=no # Setting this to "yes" enables the option in Nextcloud automatically. Note: latest-arm64 has no clamav support|' sample.conf
sed -i 's|TALK_ENABLED=no|TALK_ENABLED=yes|' sample.conf
sed -i 's|COLLABORA_ENABLED=no|COLLABORA_ENABLED=yes|' sample.conf
sed -i 's|_ENABLED=|_ENABLED=no # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically.|' sample.conf
sed -i 's|CLAMAV_ENABLED=no.*|CLAMAV_ENABLED=no # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. Note: latest-arm64 has no clamav support|' sample.conf
sed -i 's|TALK_ENABLED=no|TALK_ENABLED="yes"|' sample.conf
sed -i 's|COLLABORA_ENABLED=no|COLLABORA_ENABLED="yes"|' sample.conf
sed -i 's|COLLABORA_DICTIONARIES=|COLLABORA_DICTIONARIES="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" # You can change this in order to enable other dictionaries for collabora|' sample.conf
sed -i 's|NEXTCLOUD_DATADIR=|NEXTCLOUD_DATADIR=nextcloud_aio_nextcloud_data # You can change this to e.g. "/mnt/ncdata" to map it to a location on your host. It needs to be adjusted before the first startup and never afterwards!|' sample.conf
sed -i 's|NEXTCLOUD_MOUNT=|NEXTCLOUD_MOUNT=/mnt/ # This allows the Nextcloud container to access directories on the host. It must never be equal to the value of NEXTCLOUD_DATADIR!|' sample.conf
@@ -71,7 +71,7 @@ sed -i 's|NEXTCLOUD_MEMORY_LIMIT=|NEXTCLOUD_MEMORY_LIMIT=512M # This al
sed -i 's|APACHE_MAX_SIZE=|APACHE_MAX_SIZE=10737418240 # This needs to be an integer and in sync with NEXTCLOUD_UPLOAD_LIMIT|' sample.conf
sed -i 's|NEXTCLOUD_MAX_TIME=|NEXTCLOUD_MAX_TIME=3600 # This allows to change the upload time limit of the Nextcloud container|' sample.conf
sed -i 's|NEXTCLOUD_TRUSTED_CACERTS_DIR=|NEXTCLOUD_TRUSTED_CACERTS_DIR=/usr/local/share/ca-certificates/my-custom-ca # Nextcloud container will trust all the Certification Authorities, whose certificates are included in the given directory.|' sample.conf
sed -i 's|UPDATE_NEXTCLOUD_APPS=|UPDATE_NEXTCLOUD_APPS=no # When setting to yes, it will automatically update all installed Nextcloud apps upon container startup on saturdays.|' sample.conf
sed -i 's|UPDATE_NEXTCLOUD_APPS=|UPDATE_NEXTCLOUD_APPS=no # When setting to "yes" (with quotes), it will automatically update all installed Nextcloud apps upon container startup on saturdays.|' sample.conf
sed -i 's|APACHE_PORT=|APACHE_PORT=443 # Changing this to a different value than 443 will allow you to run it behind a reverse proxy.|' sample.conf
sed -i 's|APACHE_IP_BINDING=|APACHE_IP_BINDING=0.0.0.0 # This can be changed to e.g. 127.0.0.1 if you want to run AIO behind a reverse proxy and if that is running on the same host and using localhost to connect|' sample.conf
sed -i 's|TALK_PORT=|TALK_PORT=3478 # This allows to adjust the port that the talk container is using.|' sample.conf

View File

@@ -231,6 +231,9 @@
"protocol": "udp"
}
],
"expose": [
"8081"
],
"internal_port": "%TALK_PORT%",
"environment": [
"NC_DOMAIN=%NC_DOMAIN%",

View File

@@ -26,31 +26,29 @@ class DockerHubManager
// If one of the links below should ever become outdated, we can still upgrade the mastercontainer via the webinterface manually by opening '/api/docker/getwatchtower'
try {
$request = $this->guzzleClient->request(
$authTokenRequest = $this->guzzleClient->request(
'GET',
'https://hub.docker.com/v2/repositories/' . $name . '/tags?page_size=128'
'https://auth.docker.io/token?service=registry.docker.io&scope=repository:' . $name . ':pull'
);
$body = $request->getBody()->getContents();
$body = $authTokenRequest->getBody()->getContents();
$decodedBody = json_decode($body, true);
if (isset($decodedBody['results'])) {
$arch = php_uname('m') === 'x86_64' ? 'amd64' : 'arm64';
foreach($decodedBody['results'] as $values) {
if (isset($values['name'])
&& $values['name'] === $tag
&& isset($values['images'])
&& is_array($values['images'])) {
foreach ($values['images'] as $images) {
if (isset($images['architecture'])
&& $images['architecture'] === $arch
&& isset($images['digest'])
&& is_string($images['digest'])) {
$latestVersion = $images['digest'];
apcu_add($cacheKey, $latestVersion, 600);
return $latestVersion;
}
}
}
if(isset($decodedBody['token'])) {
$authToken = $decodedBody['token'];
$manifestRequest = $this->guzzleClient->request(
'GET',
'https://registry-1.docker.io/v2/'.$name.'/manifests/' . $tag,
[
'headers' => [
'Accept' => 'application/vnd.oci.image.index.v1+json,application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.docker.distribution.manifest.v2+json',
'Authorization' => 'Bearer ' . $authToken,
],
]
);
$responseHeaders = $manifestRequest->getHeader('docker-content-digest');
if(count($responseHeaders) === 1) {
$latestVersion = $responseHeaders[0];
apcu_add($cacheKey, $latestVersion, 600);
return $latestVersion;
}
}

View File

@@ -16,7 +16,7 @@
</header>
<div class="content">
<h1>Nextcloud AIO v4.3.0</h1>
<h1>Nextcloud AIO v4.3.1</h1>
{# Add 2nd tab warning #}
<script type="text/javascript" src="second-tab-warning.js"></script>