mirror of
https://github.com/nextcloud/all-in-one.git
synced 2026-05-21 10:50:10 +00:00
Compare commits
374 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3e08843b14 | ||
|
|
b3fffb877e | ||
|
|
a68b51507b | ||
|
|
94c5c7f417 | ||
|
|
30f1f8ee39 | ||
|
|
be07b8825f | ||
|
|
59550f15ef | ||
|
|
26c9f0ddbb | ||
|
|
a6eac17cb7 | ||
|
|
ab3737ac52 | ||
|
|
60bb67f13c | ||
|
|
d33538839d | ||
|
|
133a7500f9 | ||
|
|
5cc01532d6 | ||
|
|
18b281e425 | ||
|
|
5901559835 | ||
|
|
21919d9166 | ||
|
|
693b1ecb78 | ||
|
|
215200db9d | ||
|
|
c76b652317 | ||
|
|
88b5ee6e1b | ||
|
|
2c25f550dc | ||
|
|
066e811ccf | ||
|
|
92555a2ed6 | ||
|
|
59a2a51c6d | ||
|
|
a2c2182989 | ||
|
|
7d2695ec11 | ||
|
|
b972c99616 | ||
|
|
14acdbcb5a | ||
|
|
2cd5d65197 | ||
|
|
9b51510fa8 | ||
|
|
402eb401cb | ||
|
|
9eda45d530 | ||
|
|
0fd1c5dd9a | ||
|
|
7a90abde0a | ||
|
|
b0eaf7fa8b | ||
|
|
aece5c2bfd | ||
|
|
24b7b616d5 | ||
|
|
74e73751b1 | ||
|
|
2ff1913f2c | ||
|
|
e98d8a2304 | ||
|
|
b7c7720244 | ||
|
|
5d9c6705c4 | ||
|
|
170cb93806 | ||
|
|
04fbbecad6 | ||
|
|
2635fee3fd | ||
|
|
8b0b0d0ad8 | ||
|
|
99df9a32b5 | ||
|
|
9537122b78 | ||
|
|
371685cfd5 | ||
|
|
3431255f45 | ||
|
|
cc7c0e0c6c | ||
|
|
55dc9f4d7f | ||
|
|
af3cf47637 | ||
|
|
21cd49f933 | ||
|
|
d2d746f628 | ||
|
|
7904979be9 | ||
|
|
6683473854 | ||
|
|
f2354d0b70 | ||
|
|
5c66b783f4 | ||
|
|
f23cce39f8 | ||
|
|
220e562e03 | ||
|
|
9a6a8b50ef | ||
|
|
74b04e9484 | ||
|
|
dfe1ac9013 | ||
|
|
f37c435526 | ||
|
|
c1cedac15c | ||
|
|
103077590f | ||
|
|
64d698359c | ||
|
|
2e0410a704 | ||
|
|
04c442d8c1 | ||
|
|
a45dc5aed7 | ||
|
|
96e22fbc31 | ||
|
|
faf1e4b2a9 | ||
|
|
a0dddcc1b3 | ||
|
|
4f7fdf55d3 | ||
|
|
016b014244 | ||
|
|
d6933ed55a | ||
|
|
9c4917165e | ||
|
|
0c4c1a88f3 | ||
|
|
e49829eb63 | ||
|
|
af10e28225 | ||
|
|
fad6477c2a | ||
|
|
422b1d4922 | ||
|
|
91618de5a7 | ||
|
|
3bfa1e5239 | ||
|
|
8b9a87b893 | ||
|
|
900ac1463b | ||
|
|
8cb1d413f8 | ||
|
|
de551e3ec3 | ||
|
|
594b3f10e1 | ||
|
|
f0542158de | ||
|
|
5523dfc6ae | ||
|
|
e55faec870 | ||
|
|
305dba38a2 | ||
|
|
e0e26ffc4d | ||
|
|
5b94e833bd | ||
|
|
204a24019f | ||
|
|
f92d36a5f7 | ||
|
|
b4e30bc66a | ||
|
|
2bb47bdf1b | ||
|
|
a56fbb6045 | ||
|
|
cac797114a | ||
|
|
92c44261cd | ||
|
|
7c102626d6 | ||
|
|
5ad26a42fd | ||
|
|
0fbd7768e0 | ||
|
|
e33f797da1 | ||
|
|
685786c5f6 | ||
|
|
5795286a7b | ||
|
|
480ac49358 | ||
|
|
fe5bfea168 | ||
|
|
9b9b778f90 | ||
|
|
722cb9802a | ||
|
|
6c47764997 | ||
|
|
cca27a18d6 | ||
|
|
9cc4597318 | ||
|
|
234bdc0dab | ||
|
|
42b852f18d | ||
|
|
1dfab726c4 | ||
|
|
7522d49818 | ||
|
|
c83f97911b | ||
|
|
9e69c6bd8a | ||
|
|
d49f512a2a | ||
|
|
5bcbe4ec7d | ||
|
|
b3e5a15213 | ||
|
|
5ef3650de7 | ||
|
|
cf0113b123 | ||
|
|
0f5a349413 | ||
|
|
0e9415c672 | ||
|
|
c574b277b8 | ||
|
|
3281ff531c | ||
|
|
e03e440653 | ||
|
|
9b9f72dcb8 | ||
|
|
e55e191033 | ||
|
|
43a77772c7 | ||
|
|
1b7dfac140 | ||
|
|
faa3321863 | ||
|
|
76f56ec6a8 | ||
|
|
aac609f64d | ||
|
|
fbafc25c7d | ||
|
|
8b2963d564 | ||
|
|
722a96828e | ||
|
|
0da1b0879f | ||
|
|
5cae52b1ee | ||
|
|
e13edafa16 | ||
|
|
0fce3d9319 | ||
|
|
46105d00bb | ||
|
|
5893fdd03b | ||
|
|
2661e85aa3 | ||
|
|
55c8c3f8f5 | ||
|
|
65dda7a88b | ||
|
|
881f226875 | ||
|
|
e0b3196839 | ||
|
|
df92e707e8 | ||
|
|
c4fb5a0961 | ||
|
|
53fae60c4e | ||
|
|
ddae2673cd | ||
|
|
7f4e606d60 | ||
|
|
8ed3625a6f | ||
|
|
d2d0916696 | ||
|
|
6d11b9c72f | ||
|
|
d4e61d2b32 | ||
|
|
4a7ed52213 | ||
|
|
6685791427 | ||
|
|
b0582edb85 | ||
|
|
b9bcbfdecb | ||
|
|
936b6becc0 | ||
|
|
7e5fe5ac8e | ||
|
|
4fa2683b83 | ||
|
|
a592288f82 | ||
|
|
5e14e807ac | ||
|
|
6ab598d805 | ||
|
|
32c6c3e596 | ||
|
|
408be25263 | ||
|
|
5b101bd946 | ||
|
|
a4e762c297 | ||
|
|
fb7ee455ee | ||
|
|
ede981fc31 | ||
|
|
9200cb38ed | ||
|
|
2868d45882 | ||
|
|
70126d289e | ||
|
|
b890fc211f | ||
|
|
931bc05cfd | ||
|
|
0d1ec70b59 | ||
|
|
dffbe978a0 | ||
|
|
2c83137352 | ||
|
|
65189aa7b6 | ||
|
|
6f517955d4 | ||
|
|
774d10931f | ||
|
|
cf41079c4f | ||
|
|
60a692ae46 | ||
|
|
f17c2f5c1c | ||
|
|
11f8ac51db | ||
|
|
3b41ad49f8 | ||
|
|
4d1f356aca | ||
|
|
169e67beec | ||
|
|
4aa9a9a5be | ||
|
|
235d7b8512 | ||
|
|
10a9d56654 | ||
|
|
9fe8e7e7fc | ||
|
|
11de2c2551 | ||
|
|
c69a5d2065 | ||
|
|
2cf6c7401e | ||
|
|
f551a9c56f | ||
|
|
e6af640871 | ||
|
|
b2e33e8a51 | ||
|
|
d8e802851d | ||
|
|
c83c59771f | ||
|
|
3895650f1e | ||
|
|
79e86d6f40 | ||
|
|
5bbec81ff8 | ||
|
|
b8f534244b | ||
|
|
f1a71ac84c | ||
|
|
62c7e3f133 | ||
|
|
3052915de4 | ||
|
|
6f154eebb0 | ||
|
|
499992d390 | ||
|
|
4e166bd2f4 | ||
|
|
c153fed44d | ||
|
|
15da1035fb | ||
|
|
28463a095f | ||
|
|
378989ecb4 | ||
|
|
fed0f42fed | ||
|
|
43b5a7c8bb | ||
|
|
5621a456f9 | ||
|
|
9cd867f8d9 | ||
|
|
b1ce4a26d9 | ||
|
|
7229f2518b | ||
|
|
82b6d18b68 | ||
|
|
828040e279 | ||
|
|
20d794b71c | ||
|
|
6823e81b80 | ||
|
|
312b65ca84 | ||
|
|
f05e602574 | ||
|
|
3988351882 | ||
|
|
4a87a5cde8 | ||
|
|
188b3ada95 | ||
|
|
e56b3369d2 | ||
|
|
268d24c486 | ||
|
|
4c5ad66fb3 | ||
|
|
81e1292f0c | ||
|
|
1b2f865276 | ||
|
|
8c9020b031 | ||
|
|
b4afd49341 | ||
|
|
7f37fd7060 | ||
|
|
35c08c0381 | ||
|
|
1771a72c0e | ||
|
|
aae60363b0 | ||
|
|
e25bf4b4ca | ||
|
|
a50456591d | ||
|
|
3e0c8713cb | ||
|
|
d70cc3b171 | ||
|
|
2bcdd2af6e | ||
|
|
ee86f23856 | ||
|
|
ff6f5d4909 | ||
|
|
aec119d971 | ||
|
|
c6c1effa6d | ||
|
|
2aa5e78a22 | ||
|
|
7ba3548766 | ||
|
|
1989f27b71 | ||
|
|
bcfc33c2a6 | ||
|
|
4c0e30d49d | ||
|
|
8a7bcfe747 | ||
|
|
2a959d4e59 | ||
|
|
1b1626fe56 | ||
|
|
391d838416 | ||
|
|
725bbb7c05 | ||
|
|
a63e0b9b1b | ||
|
|
f00aaf14cd | ||
|
|
c646507c60 | ||
|
|
369226f9df | ||
|
|
bc4bdfdc99 | ||
|
|
3b9e132f11 | ||
|
|
6c3b413006 | ||
|
|
06228cd616 | ||
|
|
d89d0ce161 | ||
|
|
a6333eb5e9 | ||
|
|
5f57fcda85 | ||
|
|
620a800608 | ||
|
|
04be2a780d | ||
|
|
68d54176d5 | ||
|
|
510056d34a | ||
|
|
c128b6764e | ||
|
|
cdb16b0411 | ||
|
|
96beb00bb2 | ||
|
|
e8ab2c7026 | ||
|
|
9d154557f8 | ||
|
|
aeae72f5ba | ||
|
|
03e6f11a26 | ||
|
|
7fb3e4c4fa | ||
|
|
e267fdd8d5 | ||
|
|
db860d24af | ||
|
|
f280f09b6c | ||
|
|
d898508bf6 | ||
|
|
542caa2450 | ||
|
|
18a945381c | ||
|
|
49ab219f78 | ||
|
|
e79f0678b5 | ||
|
|
7f1b262545 | ||
|
|
d35aa3df23 | ||
|
|
04910a5b3b | ||
|
|
872ee180c7 | ||
|
|
f1e9e9bf30 | ||
|
|
da4ced725f | ||
|
|
af7f60cd9f | ||
|
|
de7d50fc03 | ||
|
|
e5e41ef6ed | ||
|
|
3302a048c9 | ||
|
|
e6b9f23e70 | ||
|
|
b9099d8bf0 | ||
|
|
4c2acbb747 | ||
|
|
d3d674531d | ||
|
|
3064bd56ab | ||
|
|
afcd9cd30d | ||
|
|
dbb395f68c | ||
|
|
b48c61142f | ||
|
|
f93085f161 | ||
|
|
b33eae44bb | ||
|
|
2a8dc50232 | ||
|
|
dfe5109f42 | ||
|
|
cc90d3bc66 | ||
|
|
3a66c329ec | ||
|
|
51ad81066b | ||
|
|
79e564949d | ||
|
|
f8297b5dea | ||
|
|
78066a8a3b | ||
|
|
31c78d03b7 | ||
|
|
40cc719d0f | ||
|
|
f2b7f82890 | ||
|
|
d77c8f7fb3 | ||
|
|
6b8786a1f7 | ||
|
|
8526af5754 | ||
|
|
25619174d6 | ||
|
|
6341ccdf54 | ||
|
|
0ad40bd3d7 | ||
|
|
76a40d97bc | ||
|
|
791c381706 | ||
|
|
c1fed20f31 | ||
|
|
be973ed1ba | ||
|
|
0b4a42679d | ||
|
|
eed6b44cd8 | ||
|
|
7bb10d32c7 | ||
|
|
f4667a2dec | ||
|
|
2ce9d26cf9 | ||
|
|
d12a3984ab | ||
|
|
592670d448 | ||
|
|
a40ffd760f | ||
|
|
3d868d4457 | ||
|
|
7af85a6982 | ||
|
|
e8ef49c42f | ||
|
|
b65ec5bb69 | ||
|
|
4253ccd43b | ||
|
|
400ba74f97 | ||
|
|
0c4885323d | ||
|
|
48a9699f42 | ||
|
|
828190e242 | ||
|
|
4ac2dbd7d1 | ||
|
|
4b87a5d38c | ||
|
|
23e0a402d0 | ||
|
|
97a0542ef6 | ||
|
|
c2505e8976 | ||
|
|
4bb57f8055 | ||
|
|
6d2272cf11 | ||
|
|
42b065b0c1 | ||
|
|
3a6cf31c4d | ||
|
|
7125b541ba | ||
|
|
7de9aae2b8 | ||
|
|
dace781b4e | ||
|
|
12f55056ee | ||
|
|
b076d5ea1a | ||
|
|
dc017401bb | ||
|
|
5c01be9852 | ||
|
|
ff836c4689 |
9
.github/dependabot.yml
vendored
9
.github/dependabot.yml
vendored
@@ -165,3 +165,12 @@ updates:
|
||||
labels:
|
||||
- 3. to review
|
||||
- dependencies
|
||||
- package-ecosystem: "docker"
|
||||
directory: "/Containers/docker-socket-proxy"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
time: "12:00"
|
||||
open-pull-requests-limit: 10
|
||||
labels:
|
||||
- 3. to review
|
||||
- dependencies
|
||||
|
||||
2
.github/workflows/codespell.yml
vendored
2
.github/workflows/codespell.yml
vendored
@@ -12,7 +12,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: Check spelling
|
||||
uses: codespell-project/actions-codespell@v2
|
||||
with:
|
||||
|
||||
2
.github/workflows/command-rebase.yml
vendored
2
.github/workflows/command-rebase.yml
vendored
@@ -31,7 +31,7 @@ jobs:
|
||||
reaction-type: "+1"
|
||||
|
||||
- name: Checkout the latest code
|
||||
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
||||
uses: actions/checkout@v4 # v3.5.2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
token: ${{ secrets.COMMAND_BOT_PAT }}
|
||||
|
||||
8
.github/workflows/dependency-updates.yml
vendored
8
.github/workflows/dependency-updates.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
name: Run dependency update script
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: 8.2
|
||||
@@ -46,10 +46,10 @@ jobs:
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v5
|
||||
with:
|
||||
commit-message: dependency updates
|
||||
commit-message: php dependency updates
|
||||
signoff: true
|
||||
title: Dependency updates
|
||||
body: Automated dependency updates since dependabot does not support grouped updates
|
||||
title: PHP dependency updates
|
||||
body: Automated php dependency updates since dependabot does not support grouped updates
|
||||
labels: dependencies, 3. to review
|
||||
milestone: next
|
||||
branch: aio-dependency-update
|
||||
|
||||
6
.github/workflows/docker-lint.yml
vendored
6
.github/workflows/docker-lint.yml
vendored
@@ -25,17 +25,17 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install npm and dockerfilelint
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install nodejs npm -y --no-install-recommends
|
||||
npm install -g dockerfilelint
|
||||
wget https://github.com/replicatedhq/dockerfilelint/pull/184.patch -O /usr/local/lib/node_modules/dockerfilelint/184.patch
|
||||
wget https://github.com/replicatedhq/dockerfilelint/pull/201.patch -O /usr/local/lib/node_modules/dockerfilelint/201.patch
|
||||
CURRENT_DIR=$PWD
|
||||
cd /usr/local/lib/node_modules/dockerfilelint/
|
||||
git apply 184.patch
|
||||
git apply 201.patch
|
||||
cd $CURRENT_DIR
|
||||
cat << RULES > ./.dockerfilelintrc
|
||||
rules:
|
||||
|
||||
4
.github/workflows/helm-release.yml
vendored
4
.github/workflows/helm-release.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Turnstyle
|
||||
uses: softprops/turnstyle@v1
|
||||
@@ -32,7 +32,7 @@ jobs:
|
||||
|
||||
# See https://github.com/helm/chart-releaser-action/issues/6
|
||||
- name: Set up Helm
|
||||
uses: azure/setup-helm@v3.1
|
||||
uses: azure/setup-helm@v3.5
|
||||
with:
|
||||
version: v3.6.3
|
||||
|
||||
|
||||
2
.github/workflows/imaginary-update.yml
vendored
2
.github/workflows/imaginary-update.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
name: update to latest imaginary commit on master branch
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Run imaginary-update
|
||||
run: |
|
||||
# Imaginary
|
||||
|
||||
2
.github/workflows/json-validator.yml
vendored
2
.github/workflows/json-validator.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: Validate Json
|
||||
run: |
|
||||
sudo apt-get update
|
||||
|
||||
35
.github/workflows/lint-helm.yml
vendored
Normal file
35
.github/workflows/lint-helm.yml
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
name: Lint and Test Charts
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths:
|
||||
- 'nextcloud-aio-helm-chart/**'
|
||||
|
||||
jobs:
|
||||
lint-helm:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Install Helm
|
||||
uses: azure/setup-helm@v3.5
|
||||
with:
|
||||
version: v3.11.1
|
||||
|
||||
- name: Set up chart-testing
|
||||
uses: helm/chart-testing-action@v2.4.0
|
||||
|
||||
- name: Run chart-testing (lint)
|
||||
id: lint
|
||||
run: ct lint --target-branch ${{ github.event.repository.default_branch }} --debug --chart-dirs nextcloud-aio-helm-chart
|
||||
|
||||
- name: Create kind cluster
|
||||
uses: helm/kind-action@v1.8.0
|
||||
|
||||
- name: Run chart-testing (install)
|
||||
id: install
|
||||
run: ct install --target-branch ${{ github.event.repository.default_branch }} --debug --chart-dirs nextcloud-aio-helm-chart
|
||||
2
.github/workflows/lint-php.yml
vendored
2
.github/workflows/lint-php.yml
vendored
@@ -33,7 +33,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
||||
uses: actions/checkout@v4 # v3.5.2
|
||||
|
||||
- name: Set up php ${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
|
||||
|
||||
8
.github/workflows/nextcloud-update.yml
vendored
8
.github/workflows/nextcloud-update.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
name: Run nextcloud-update script
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Run nextcloud-update script
|
||||
run: |
|
||||
# Inspired by https://github.com/nextcloud/docker/blob/master/update.sh
|
||||
@@ -63,14 +63,16 @@ jobs:
|
||||
# Nextcloud
|
||||
NC_MAJOR="$(grep "ENV NEXTCLOUD_VERSION" ./Containers/nextcloud/Dockerfile | grep -oP '[23][0-9]')"
|
||||
NCVERSION=$(curl -s -m 900 https://download.nextcloud.com/server/releases/ | sed --silent 's/.*href="nextcloud-\([^"]\+\).zip.asc".*/\1/p' | grep "$NC_MAJOR" | sort --version-sort | tail -1)
|
||||
sed -i "s|^ENV NEXTCLOUD_VERSION.*|ENV NEXTCLOUD_VERSION $NCVERSION|" ./Containers/nextcloud/Dockerfile
|
||||
if [ -n "$NCVERSION" ]; then
|
||||
sed -i "s|^ENV NEXTCLOUD_VERSION.*|ENV NEXTCLOUD_VERSION $NCVERSION|" ./Containers/nextcloud/Dockerfile
|
||||
fi
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v5
|
||||
with:
|
||||
commit-message: nextcloud-update automated change
|
||||
signoff: true
|
||||
title: Nextcloud update
|
||||
title: Nextcloud dependency update
|
||||
body: Automated Nextcloud container update
|
||||
labels: dependencies, 3. to review
|
||||
milestone: next
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
name: PHP Deprecation Detector
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up php8.2
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
|
||||
4
.github/workflows/psalm-update-baseline.yml
vendored
4
.github/workflows/psalm-update-baseline.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up php8.2
|
||||
uses: shivammathur/setup-php@v2
|
||||
@@ -39,8 +39,6 @@ jobs:
|
||||
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
|
||||
signoff: true
|
||||
branch: automated/noid/psalm-baseline-update
|
||||
# Make sure we can open multiple PRs
|
||||
branch-suffix: timestamp
|
||||
title: '[Automated] Update psalm-baseline.xml'
|
||||
milestone: next
|
||||
body: |
|
||||
|
||||
2
.github/workflows/psalm.yml
vendored
2
.github/workflows/psalm.yml
vendored
@@ -26,7 +26,7 @@ jobs:
|
||||
name: Nextcloud
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
|
||||
uses: actions/checkout@v4 # v3.5.2
|
||||
|
||||
- name: Set up php
|
||||
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
|
||||
|
||||
2
.github/workflows/shellcheck.yml
vendored
2
.github/workflows/shellcheck.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
name: Check Shell
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Run Shellcheck
|
||||
uses: ludeeus/action-shellcheck@2.0.0
|
||||
with:
|
||||
|
||||
2
.github/workflows/talk.yml
vendored
2
.github/workflows/talk.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
name: update talk
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Run talk-update
|
||||
run: |
|
||||
# Spreed
|
||||
|
||||
2
.github/workflows/twig-lint.yml
vendored
2
.github/workflows/twig-lint.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up php ${{ matrix.php-versions }}
|
||||
uses: shivammathur/setup-php@v2
|
||||
|
||||
2
.github/workflows/update-helm.yml
vendored
2
.github/workflows/update-helm.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: update helm chart
|
||||
run: |
|
||||
DOCKER_TAG="$(curl -L -s 'https://registry.hub.docker.com/v2/repositories/nextcloud/all-in-one/tags?page_size=1024' | jq '."results"[]["name"]' | sed 's|"||g' | grep '^20' | sort -r | head -1)"
|
||||
|
||||
2
.github/workflows/update-yaml.yml
vendored
2
.github/workflows/update-yaml.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: update yaml files
|
||||
run: |
|
||||
sudo bash manual-install/update-yaml.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM caddy:2.6.4-alpine as caddy
|
||||
FROM caddy:2.7.4-alpine as caddy
|
||||
|
||||
FROM httpd:2.4.57-alpine3.18
|
||||
|
||||
@@ -30,6 +30,7 @@ RUN set -ex; \
|
||||
tzdata \
|
||||
ca-certificates \
|
||||
openssl \
|
||||
bind-tools \
|
||||
netcat-openbsd; \
|
||||
\
|
||||
sed -i \
|
||||
|
||||
@@ -3,4 +3,7 @@
|
||||
nc -z "$NEXTCLOUD_HOST" 9000 || exit 0
|
||||
nc -z localhost 8000 || exit 1
|
||||
nc -z localhost "$APACHE_PORT" || exit 1
|
||||
nc -z "$NC_DOMAIN" 443 || exit 1
|
||||
if ! nc -z "$NC_DOMAIN" 443; then
|
||||
echo "Could not reach $NC_DOMAIN on port 443."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -17,6 +17,12 @@ while ! nc -z "$NEXTCLOUD_HOST" 9000; do
|
||||
sleep 5
|
||||
done
|
||||
|
||||
# Get ipv4-address of Apache
|
||||
IPv4_ADDRESS="$(dig nextcloud-aio-apache A +short | head -1)"
|
||||
# Bring it in CIDR notation
|
||||
# shellcheck disable=SC2001
|
||||
IPv4_ADDRESS="$(echo "$IPv4_ADDRESS" | sed 's|[0-9]\+$|1/32|')"
|
||||
|
||||
if [ -z "$APACHE_PORT" ]; then
|
||||
export APACHE_PORT="443"
|
||||
fi
|
||||
@@ -41,7 +47,7 @@ echo "$CADDYFILE" > /tmp/Caddyfile
|
||||
if [ "$APACHE_PORT" != '443' ]; then
|
||||
CADDYFILE="$(sed 's|# trusted_proxies placeholder|trusted_proxies static private_ranges|' /tmp/Caddyfile)"
|
||||
else
|
||||
CADDYFILE="$(sed 's|trusted_proxies.*private_ranges|# trusted_proxies placeholder|' /tmp/Caddyfile)"
|
||||
CADDYFILE="$(sed "s|# trusted_proxies placeholder|trusted_proxies static $IPv4_ADDRESS|" /tmp/Caddyfile)"
|
||||
fi
|
||||
echo "$CADDYFILE" > /tmp/Caddyfile
|
||||
|
||||
@@ -57,7 +63,7 @@ mkdir -p /mnt/data/caddy-imports
|
||||
# Remove falsely added Nextcloud conf
|
||||
rm -f /mnt/data/caddy-imports/nextcloud
|
||||
|
||||
# Makre sure that the caddy-imports dir is not empty
|
||||
# Make sure that the caddy-imports dir is not empty
|
||||
echo "# empty file so that caddy does not print a warning" > /mnt/data/caddy-imports/empty
|
||||
|
||||
# Fix apache startup
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM alpine:3.18.2
|
||||
FROM alpine:3.18.3
|
||||
|
||||
RUN set -ex; \
|
||||
\
|
||||
|
||||
@@ -35,19 +35,19 @@ done
|
||||
|
||||
# Check if target is mountpoint
|
||||
if ! mountpoint -q /mnt/borgbackup; then
|
||||
echo "/mnt/borgbackup is not a mountpoint which is not allowed"
|
||||
echo "/mnt/borgbackup is not a mountpoint which is not allowed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if target is empty
|
||||
if [ "$BORG_MODE" != backup ] && [ "$BORG_MODE" != test ] && ! [ -f "$BORG_BACKUP_DIRECTORY/config" ]; then
|
||||
echo "The repository is empty. cannot perform check or restore."
|
||||
echo "The repository is empty. Cannot perform check or restore."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Do not continue if this file exists (needed for simple external blocking)
|
||||
if [ -f "$BORG_BACKUP_DIRECTORY/aio-lockfile" ]; then
|
||||
echo "Not continuing because aio-lockfile exists - it seems like a script is externally running which is locking the backup archive."
|
||||
echo "Not continuing because aio-lockfile exists – it seems like a script is externally running which is locking the backup archive."
|
||||
echo "If this should not be the case, you can fix this by deleting the 'aio-lockfile' file from the backup archive directory."
|
||||
exit 1
|
||||
fi
|
||||
@@ -65,10 +65,10 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
echo "configuration.json not present. Cannot perform the backup!"
|
||||
exit 1
|
||||
elif ! [ -f "/nextcloud_aio_volumes/nextcloud_aio_nextcloud/config/config.php" ]; then
|
||||
echo "config.php is missing cannot perform backup"
|
||||
echo "config.php is missing. Cannot perform backup!"
|
||||
exit 1
|
||||
elif ! [ -f "/nextcloud_aio_volumes/nextcloud_aio_database_dump/database-dump.sql" ]; then
|
||||
echo "database-dump is missing. cannot perform backup"
|
||||
echo "database-dump is missing. Cannot perform backup!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -81,9 +81,17 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
done
|
||||
|
||||
if [ -f "/nextcloud_aio_volumes/nextcloud_aio_database_dump/export.failed" ]; then
|
||||
echo "Database export failed the last time. Most likely was the export time not high enough."
|
||||
echo "Cannot create a backup now."
|
||||
echo "Please report this to https://github.com/nextcloud/all-in-one/issues. Thanks!"
|
||||
echo "Reason is that the database export failed the last time."
|
||||
echo "Most likely was the database container not correctly shut down via the AIO interface."
|
||||
echo ""
|
||||
echo "You might want to try the database export again manually by running the three commands:"
|
||||
echo "sudo docker start nextcloud-aio-database"
|
||||
echo "sleep 10"
|
||||
echo "sudo docker stop nextcloud-aio-database -t 1800"
|
||||
echo ""
|
||||
echo "Afterwards try to create a backup again and it should hopefully work."
|
||||
echo "If it should still fail, feel free to report this to https://github.com/nextcloud/all-in-one/issues and post the database container logs and the borgbackup container logs into the thread. Thanks!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -101,7 +109,7 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "initializing repository..."
|
||||
echo "Initializing repository..."
|
||||
NEW_REPOSITORY=1
|
||||
if ! borg init --debug --encryption=repokey-blake2 "$BORG_BACKUP_DIRECTORY"; then
|
||||
echo "Could not initialize borg repository."
|
||||
@@ -212,7 +220,7 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
fi
|
||||
echo "Compacting additional volumes..."
|
||||
if ! borg compact "$BORG_BACKUP_DIRECTORY"; then
|
||||
echo "Failed to compact archives!"
|
||||
echo "Failed to compact additional docker-volume archives!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
@@ -242,7 +250,7 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
fi
|
||||
echo "Compacting additional host mounts..."
|
||||
if ! borg compact "$BORG_BACKUP_DIRECTORY"; then
|
||||
echo "Failed to compact archives!"
|
||||
echo "Failed to compact additional host-mount archives!"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
@@ -250,7 +258,7 @@ if [ "$BORG_MODE" = backup ]; then
|
||||
|
||||
# Inform user
|
||||
get_expiration_time
|
||||
echo "Backup finished successfully on $END_DATE_READABLE ($DURATION_READABLE)"
|
||||
echo "Backup finished successfully on $END_DATE_READABLE ($DURATION_READABLE)."
|
||||
if [ -f "/nextcloud_aio_volumes/nextcloud_aio_nextcloud_data/update.failed" ]; then
|
||||
echo "However a Nextcloud update failed. So reporting that the backup failed which will skip any update attempt the next time."
|
||||
echo "Please restore a backup from before the failed Nextcloud update attempt."
|
||||
@@ -361,7 +369,7 @@ if [ "$BORG_MODE" = restore ]; then
|
||||
|
||||
# Inform user
|
||||
get_expiration_time
|
||||
echo "Restore finished successfully on $END_DATE_READABLE ($DURATION_READABLE)"
|
||||
echo "Restore finished successfully on $END_DATE_READABLE ($DURATION_READABLE)."
|
||||
|
||||
# Add file to Nextcloud container so that it skips any update the next time
|
||||
touch "/nextcloud_aio_volumes/nextcloud_aio_nextcloud_data/skip.update"
|
||||
@@ -389,7 +397,7 @@ if [ "$BORG_MODE" = check ]; then
|
||||
|
||||
# Inform user
|
||||
get_expiration_time
|
||||
echo "Check finished successfully on $END_DATE_READABLE ($DURATION_READABLE)"
|
||||
echo "Check finished successfully on $END_DATE_READABLE ($DURATION_READABLE)."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -406,7 +414,7 @@ if [ "$BORG_MODE" = "check-repair" ]; then
|
||||
|
||||
# Inform user
|
||||
get_expiration_time
|
||||
echo "Check finished successfully on $END_DATE_READABLE ($DURATION_READABLE)"
|
||||
echo "Check finished successfully on $END_DATE_READABLE ($DURATION_READABLE)."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Probably from this file: https://github.com/Cisco-Talos/clamav-docker/blob/main/clamav/1.1/alpine/Dockerfile
|
||||
FROM clamav/clamav:1.1.0-1
|
||||
FROM clamav/clamav:1.2.0-1
|
||||
|
||||
COPY clamav.conf /tmp/clamav.conf
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From a file located probably somewhere here: https://github.com/CollaboraOnline/online/tree/master/docker
|
||||
FROM collabora/code:23.05.1.3.1
|
||||
FROM collabora/code:23.05.4.1.1
|
||||
|
||||
USER root
|
||||
|
||||
|
||||
18
Containers/docker-socket-proxy/Dockerfile
Normal file
18
Containers/docker-socket-proxy/Dockerfile
Normal file
@@ -0,0 +1,18 @@
|
||||
FROM haproxy:2.8.3-alpine3.18
|
||||
|
||||
USER root
|
||||
ENV NEXTCLOUD_HOST nextcloud-aio-nextcloud
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
ca-certificates \
|
||||
tzdata \
|
||||
bash \
|
||||
bind-tools; \
|
||||
chmod -R 777 /tmp
|
||||
|
||||
COPY --chmod=775 *.sh /
|
||||
COPY --chmod=664 haproxy.cfg /haproxy.cfg
|
||||
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
54
Containers/docker-socket-proxy/haproxy.cfg
Normal file
54
Containers/docker-socket-proxy/haproxy.cfg
Normal file
@@ -0,0 +1,54 @@
|
||||
# Inspiration: https://github.com/Tecnativa/docker-socket-proxy/blob/master/haproxy.cfg
|
||||
|
||||
defaults
|
||||
timeout connect 10s
|
||||
timeout client 10s
|
||||
timeout server 10s
|
||||
|
||||
frontend http
|
||||
mode http
|
||||
bind :::2375 v4v6
|
||||
http-request deny unless { src 127.0.0.1 } || { src ::1 } || { src NC_IPV4_PLACEHOLDER } || { src NC_IPV6_PLACEHOLDER }
|
||||
# container inspect: GET containers/%s/json
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/nc_app_[a-zA-Z0-9_.-]+/json } METH_GET
|
||||
# container start/stop: POST containers/%s/start containers/%s/stop
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/nc_app_[a-zA-Z0-9_.-]+/((start)|(stop)) } METH_POST
|
||||
# container rm: DELETE containers/%s
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/nc_app_[a-zA-Z0-9_.-]+ } METH_DELETE
|
||||
|
||||
|
||||
# container create: POST containers/create?name=%s
|
||||
# ACL to restrict container name to nc_app_[a-zA-Z0-9_.-]+
|
||||
acl nc_app_container_name url_param(name) -m reg -i "^nc_app_[a-zA-Z0-9_.-]+"
|
||||
|
||||
# ACL to restrict the number of Mounts to 1
|
||||
acl one_mount_volume req.body -m reg -i "\"Mounts\"\s*:\s*\[\s*(?:(?!\"Mounts\"\s*:\s*\[)[^}]*)}[^}]*\]"
|
||||
# ACL to deny if there are any binds
|
||||
acl binds_present req.body -m reg -i "\"HostConfig\"\s*:.*\"Binds\"\s*:"
|
||||
# ACL to restrict the type of Mounts to volume
|
||||
acl type_not_volume req.body -m reg -i "\"Mounts\":\s*\[[^\]]*(\"Type\":\s*\"(?!volume\b)\w+\"[^\]]*)+\]"
|
||||
http-request deny if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/create } nc_app_container_name !one_mount_volume binds_present type_not_volume METH_POST
|
||||
|
||||
# ACL to restrict container creation, that it has HostConfig.Privileged not set
|
||||
acl no_privileged_flag req.body -m reg -i "\"HostConfig\":\s?{[^}]*\"Privileged\"\s*:"
|
||||
# ACL to allow mount volume with strict pattern for name: nc_app_[a-zA-Z0-9_.-]+_data
|
||||
acl nc_app_volume_data_only req.body -m reg -i "\"Mounts\":\s?\[\s?{[^}]*\"Source\":\s?\"nc_app_[a-zA-Z0-9_.-]+_data\""
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/containers/create } nc_app_container_name !no_privileged_flag nc_app_volume_data_only METH_POST
|
||||
# end of container create
|
||||
|
||||
# volume create: POST volumes/create
|
||||
# restrict name
|
||||
acl nc_app_volume_data req.body -m reg -i "\"Name\":\s?\"nc_app_[a-zA-Z0-9_.-]+_data\""
|
||||
# do not allow to use "device" word e.g., "--opt device=:/path/to/dir"
|
||||
acl volume_no_device req.body -m reg -i "\"device\""
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/volumes/create } nc_app_volume_data !volume_no_device METH_POST
|
||||
# volume rm: DELETE volumes/%s
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/volumes/nc_app_[a-zA-Z0-9_.-]+_data } METH_DELETE
|
||||
# image pull: POST images/create?fromImage=%s
|
||||
http-request allow if { path,url_dec -m reg -i ^(/v[\d\.]+)?/images/create } METH_POST
|
||||
http-request deny
|
||||
default_backend dockerbackend
|
||||
|
||||
backend dockerbackend
|
||||
mode http
|
||||
server dockersocket /var/run/docker.sock
|
||||
4
Containers/docker-socket-proxy/healthcheck.sh
Normal file
4
Containers/docker-socket-proxy/healthcheck.sh
Normal file
@@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
nc -z "$NEXTCLOUD_HOST" 9000 || exit 0
|
||||
nc -z localhost 2375 || exit 1
|
||||
23
Containers/docker-socket-proxy/start.sh
Normal file
23
Containers/docker-socket-proxy/start.sh
Normal file
@@ -0,0 +1,23 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Only start container if nextcloud is accessible
|
||||
while ! nc -z "$NEXTCLOUD_HOST" 9000; do
|
||||
echo "Waiting for Nextcloud to start..."
|
||||
sleep 5
|
||||
done
|
||||
|
||||
set -x
|
||||
IPv4_ADDRESS_NC="$(dig nextcloud-aio-nextcloud IN A +short | grep '^[0-9.]\+$' | sort | head -n1)"
|
||||
HAPROXYFILE="$(sed "s|NC_IPV4_PLACEHOLDER|$IPv4_ADDRESS_NC|" /haproxy.cfg)"
|
||||
echo "$HAPROXYFILE" > /tmp/haproxy.cfg
|
||||
|
||||
IPv6_ADDRESS_NC="$(dig nextcloud-aio-nextcloud AAAA +short | grep '^[0-9a-f:]\+$' | sort | head -n1)"
|
||||
if [ -n "$IPv6_ADDRESS_NC" ]; then
|
||||
HAPROXYFILE="$(sed "s|NC_IPV6_PLACEHOLDER|$IPv6_ADDRESS_NC|" /tmp/haproxy.cfg)"
|
||||
else
|
||||
HAPROXYFILE="$(sed "s# || { src NC_IPV6_PLACEHOLDER }##g" /tmp/haproxy.cfg)"
|
||||
fi
|
||||
echo "$HAPROXYFILE" > /tmp/haproxy.cfg
|
||||
set +x
|
||||
|
||||
haproxy -f /tmp/haproxy.cfg -db
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM alpine:3.18.2
|
||||
FROM alpine:3.18.3
|
||||
RUN set -ex; \
|
||||
apk add --no-cache bash lighttpd netcat-openbsd; \
|
||||
adduser -S www-data -G www-data; \
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Probably from here https://github.com/elastic/elasticsearch/blob/main/distribution/docker/src/docker/Dockerfile
|
||||
FROM elasticsearch:8.8.0
|
||||
FROM elasticsearch:8.10.1
|
||||
|
||||
USER root
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM golang:1.20.6-alpine3.18 as go
|
||||
FROM golang:1.21.1-alpine3.18 as go
|
||||
|
||||
ENV IMAGINARY_HASH b632dae8cc321452c3f85bcae79c580b1ae1ed84
|
||||
|
||||
@@ -12,7 +12,7 @@ RUN set -ex; \
|
||||
build-base; \
|
||||
go install github.com/h2non/imaginary@"$IMAGINARY_HASH";
|
||||
|
||||
FROM alpine:3.18.2
|
||||
FROM alpine:3.18.3
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
tzdata \
|
||||
|
||||
@@ -14,18 +14,17 @@
|
||||
servers {
|
||||
protocols h1 h2 h2c
|
||||
}
|
||||
|
||||
on_demand_tls {
|
||||
ask http://localhost:9876/
|
||||
}
|
||||
}
|
||||
|
||||
http://:80 {
|
||||
redir https://{host}{uri}
|
||||
}
|
||||
|
||||
# Match only host names and not ip-addresses:
|
||||
https://*.*:8443,
|
||||
https://*.*.*:8443,
|
||||
https://*.*.*.*:8443,
|
||||
https://*.*.*.*.*:8443,
|
||||
https://*.*.*.*.*.*:8443 {
|
||||
https://:8443 {
|
||||
|
||||
reverse_proxy localhost:8000
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
# Docker CLI is a requirement
|
||||
FROM docker:24.0.4-cli as docker
|
||||
FROM docker:24.0.6-cli as docker
|
||||
|
||||
# Caddy is a requirement
|
||||
FROM caddy:2.6.4-alpine as caddy
|
||||
FROM caddy:2.7.4-alpine as caddy
|
||||
|
||||
# From https://github.com/docker-library/php/blob/master/8.2/alpine3.18/fpm/Dockerfile
|
||||
FROM php:8.2.8-fpm-alpine3.18
|
||||
FROM php:8.2.10-fpm-alpine3.18
|
||||
|
||||
EXPOSE 80
|
||||
EXPOSE 8080
|
||||
@@ -56,6 +56,8 @@ RUN set -ex; \
|
||||
sed -i 's/^pm = dynamic/pm = ondemand/' /usr/local/etc/php-fpm.d/www.conf; \
|
||||
sed -i 's/^pm.max_children =.*/pm.max_children = 80/' /usr/local/etc/php-fpm.d/www.conf; \
|
||||
sed -i 's|access.log = /proc/self/fd/2|access.log = /proc/self/fd/1|' /usr/local/etc/php-fpm.d/docker.conf; \
|
||||
grep -q ';listen.allowed_clients' /usr/local/etc/php-fpm.d/www.conf; \
|
||||
sed -i 's|;listen.allowed_clients.*|listen.allowed_clients = 127.0.0.1,::1|' /usr/local/etc/php-fpm.d/www.conf; \
|
||||
\
|
||||
apk add --no-cache git; \
|
||||
wget https://getcomposer.org/installer -O - | php -- --install-dir=/usr/local/bin --filename=composer; \
|
||||
@@ -121,6 +123,5 @@ COPY mastercontainer.conf /etc/apache2/sites-available/mastercontainer.conf
|
||||
USER root
|
||||
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
|
||||
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
|
||||
@@ -16,7 +16,7 @@ fi
|
||||
sudo -u www-data touch "/mnt/docker-aio-config/data/daily_backup_running"
|
||||
|
||||
# Check if apache is running/stopped, watchtower is stopped and backupcontainer is stopped
|
||||
APACHE_PORT="$(docker inspect nextcloud-aio-apache --format "{{.HostConfig.PortBindings}}" | grep -oP '[0-9]+' | head -1)"
|
||||
APACHE_PORT="$(docker inspect nextcloud-aio-apache --format "{{.HostConfig.PortBindings}}" | grep -o '[0-9]\+' | head -1)"
|
||||
while docker ps --format "{{.Names}}" | grep -q "^nextcloud-aio-apache$" && ! nc -z nextcloud-aio-apache "$APACHE_PORT"; do
|
||||
echo "Waiting for apache to become available"
|
||||
sleep 30
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -f "/mnt/docker-aio-config/data/configuration.json" ]; then
|
||||
nc -z localhost 80 || exit 1
|
||||
nc -z localhost 8000 || exit 1
|
||||
nc -z localhost 8080 || exit 1
|
||||
nc -z localhost 8443 || exit 1
|
||||
nc -z localhost 9000 || exit 1
|
||||
nc -z localhost 9876 || exit 1
|
||||
fi
|
||||
|
||||
@@ -26,6 +26,12 @@ if [ "$EUID" != "0" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check that the CMD is not overwritten nor set
|
||||
if [ "$*" != "" ]; then
|
||||
print_red "Docker run command for AIO is incorrect as a CMD option was given which is not expected."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if socket is available and readable
|
||||
if ! [ -a "/var/run/docker.sock" ]; then
|
||||
print_red "Docker socket is not available. Cannot continue."
|
||||
@@ -247,6 +253,35 @@ if [ "$?" = 6 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check that no changes have been made to timezone settings since AIO only supports running in Etc/UTC timezone
|
||||
if [ -n "$TZ" ]; then
|
||||
print_red "The environmental variable TZ has been set which is not supported by AIO since it only supports running in the default Etc/UTC timezone!"
|
||||
echo "The correct timezone can be set in the AIO interface later on!"
|
||||
# Disable exit since it seems to be by default set on unraid and we dont want to break these instances
|
||||
# exit 1
|
||||
fi
|
||||
if mountpoint -q /etc/localtime; then
|
||||
print_red "/etc/localtime has been mounted into the container which is not allowed because AIO only supports running in the default Etc/UTC timezone!"
|
||||
echo "The correct timezone can be set in the AIO interface later on!"
|
||||
exit 1
|
||||
fi
|
||||
if mountpoint -q /etc/timezone; then
|
||||
print_red "/etc/timezone has been mounted into the container which is not allowed because AIO only supports running in the default Etc/UTC timezone!"
|
||||
echo "The correct timezone can be set in the AIO interface later on!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if unsupported env are set (but don't exit as it would break many instances)
|
||||
if [ -n "$APACHE_DISABLE_REWRITE_IP" ]; then
|
||||
print_red "The environmental variable APACHE_DISABLE_REWRITE_IP has been set which is not supported by AIO. Please remove it!"
|
||||
fi
|
||||
if [ -n "$NEXTCLOUD_TRUSTED_DOMAINS" ]; then
|
||||
print_red "The environmental variable NEXTCLOUD_TRUSTED_DOMAINS has been set which is not supported by AIO. Please remove it!"
|
||||
fi
|
||||
if [ -n "$TRUSTED_PROXIES" ]; then
|
||||
print_red "The environmental variable TRUSTED_PROXIES has been set which is not supported by AIO. Please remove it!"
|
||||
fi
|
||||
|
||||
# Add important folders
|
||||
mkdir -p /mnt/docker-aio-config/data/
|
||||
mkdir -p /mnt/docker-aio-config/session/
|
||||
@@ -298,8 +333,8 @@ E.g. https://internal.ip.of.this.server:8080
|
||||
If your server has port 80 and 8443 open and you point a domain to your server, you can get a valid certificate automatically by opening the Nextcloud AIO Interface via:
|
||||
https://your-domain-that-points-to-this-server.tld:8443"
|
||||
|
||||
# Set the timezone to UTC
|
||||
export TZ=UTC
|
||||
# Set the timezone to Etc/UTC
|
||||
export TZ=Etc/UTC
|
||||
|
||||
# Fix apache startup
|
||||
rm -f /var/run/apache2/httpd.pid
|
||||
@@ -310,4 +345,5 @@ caddy fmt --overwrite /Caddyfile
|
||||
# Fix caddy log
|
||||
chmod 777 /root
|
||||
|
||||
exec "$@"
|
||||
# Start supervisord
|
||||
/usr/bin/supervisord -c /supervisord.conf
|
||||
|
||||
@@ -55,3 +55,12 @@ stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
command=/session-deduplicator.sh
|
||||
user=root
|
||||
|
||||
[program:domain-validator]
|
||||
# Logging is disabled as otherwise all attempts will be logged which spams the logs
|
||||
# stdout_logfile=/dev/stdout
|
||||
# stdout_logfile_maxbytes=0
|
||||
# stderr_logfile=/dev/stderr
|
||||
# stderr_logfile_maxbytes=0
|
||||
command=php -S 127.0.0.1:9876 /var/www/docker-aio/php/domain-validator.php
|
||||
user=www-data
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
FROM php:8.1.21-fpm-alpine3.18
|
||||
FROM php:8.1.23-fpm-alpine3.18
|
||||
|
||||
ENV PHP_MEMORY_LIMIT 512M
|
||||
ENV PHP_UPLOAD_LIMIT 10G
|
||||
ENV PHP_MAX_TIME 3600
|
||||
ENV NEXTCLOUD_VERSION 26.0.4
|
||||
ENV NEXTCLOUD_VERSION 27.1.1
|
||||
ENV AIO_TOKEN 123456
|
||||
ENV AIO_URL localhost
|
||||
|
||||
@@ -69,7 +69,7 @@ RUN set -ex; \
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.22; \
|
||||
pecl install memcached-3.2.0; \
|
||||
pecl install redis-5.3.7; \
|
||||
pecl install redis-6.0.0; \
|
||||
pecl install imagick-3.7.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
@@ -223,5 +223,5 @@ USER root
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
|
||||
|
||||
HEALTHCHECK CMD sudo -E -u www-data bash /healthcheck.sh
|
||||
HEALTHCHECK --start-period=60s CMD sudo -E -u www-data bash /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -282,6 +282,8 @@ DATADIR_PERMISSION_CONF
|
||||
touch "$NEXTCLOUD_DATA_DIR/install.failed"
|
||||
exit 1
|
||||
fi
|
||||
# shellcheck disable=SC2016
|
||||
installed_version="$(php -r 'require "/var/www/html/version.php"; echo implode(".", $OC_Version);')"
|
||||
fi
|
||||
php /var/www/html/occ app:disable updatenotification
|
||||
rm -rf /var/www/html/apps/updatenotification
|
||||
@@ -476,11 +478,15 @@ php /var/www/html/occ config:system:set updatedirectory --value="/nc-updater"
|
||||
|
||||
# Apply network settings
|
||||
echo "Applying network settings..."
|
||||
php /var/www/html/occ config:system:set davstorage.request_timeout --value="$PHP_MAX_TIME" --type=int
|
||||
php /var/www/html/occ config:system:set trusted_domains 1 --value="$NC_DOMAIN"
|
||||
php /var/www/html/occ config:system:set overwrite.cli.url --value="https://$NC_DOMAIN/"
|
||||
php /var/www/html/occ config:system:set htaccess.RewriteBase --value="/"
|
||||
php /var/www/html/occ maintenance:update:htaccess
|
||||
|
||||
# Apply dbpersistent setting in order to fix too many db connections
|
||||
php /var/www/html/occ config:system:set dbpersistent --value=true --type=bool
|
||||
|
||||
# Disallow creating local external storages when nothing was mounted
|
||||
if [ -z "$NEXTCLOUD_MOUNT" ]; then
|
||||
php /var/www/html/occ config:system:set files_external_allow_create_new_local --type=bool --value=false
|
||||
@@ -556,7 +562,7 @@ if [ "$COLLABORA_ENABLED" = 'yes' ]; then
|
||||
echo "Warning: wopi_allowlist is empty which should not be the case!"
|
||||
fi
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/richdocuments" ]; then
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/richdocuments" ]; then
|
||||
php /var/www/html/occ app:remove richdocuments
|
||||
fi
|
||||
fi
|
||||
@@ -580,7 +586,7 @@ if [ "$ONLYOFFICE_ENABLED" = 'yes' ]; then
|
||||
php /var/www/html/occ config:app:set onlyoffice DocumentServerUrl --value="https://$NC_DOMAIN/onlyoffice"
|
||||
php /var/www/html/occ config:system:set allow_local_remote_servers --type=bool --value=true
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/onlyoffice" ] && [ -n "$ONLYOFFICE_SECRET" ] && [ "$(php /var/www/html/occ config:system:get onlyoffice jwt_secret)" = "$ONLYOFFICE_SECRET" ]; then
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/onlyoffice" ] && [ -n "$ONLYOFFICE_SECRET" ] && [ "$(php /var/www/html/occ config:system:get onlyoffice jwt_secret)" = "$ONLYOFFICE_SECRET" ]; then
|
||||
php /var/www/html/occ app:remove onlyoffice
|
||||
fi
|
||||
fi
|
||||
@@ -607,7 +613,7 @@ if [ "$TALK_ENABLED" = 'yes' ]; then
|
||||
php /var/www/html/occ talk:signaling:add "https://$NC_DOMAIN/standalone-signaling/" "$SIGNALING_SECRET" --verify
|
||||
fi
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/spreed" ]; then
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/spreed" ]; then
|
||||
php /var/www/html/occ app:remove spreed
|
||||
fi
|
||||
fi
|
||||
@@ -654,7 +660,7 @@ if [ "$CLAMAV_ENABLED" = 'yes' ]; then
|
||||
php /var/www/html/occ config:app:set files_antivirus av_infected_action --value="only_log"
|
||||
fi
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/files_antivirus" ]; then
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/files_antivirus" ]; then
|
||||
php /var/www/html/occ app:remove files_antivirus
|
||||
fi
|
||||
fi
|
||||
@@ -701,7 +707,7 @@ if [ "$FULLTEXTSEARCH_ENABLED" = 'yes' ]; then
|
||||
php /var/www/html/occ app:update files_fulltextsearch
|
||||
fi
|
||||
php /var/www/html/occ fulltextsearch:configure '{"search_platform":"OCA\\FullTextSearch_Elasticsearch\\Platform\\ElasticSearchPlatform"}'
|
||||
php /var/www/html/occ fulltextsearch_elasticsearch:configure "{\"elastic_host\":\"http://$FULLTEXTSEARCH_HOST:9200\",\"elastic_index\":\"nextcloud-aio\"}"
|
||||
php /var/www/html/occ fulltextsearch_elasticsearch:configure "{\"elastic_host\":\"http://elastic:$FULLTEXTSEARCH_PASSWORD@$FULLTEXTSEARCH_HOST:9200\",\"elastic_index\":\"nextcloud-aio\"}"
|
||||
php /var/www/html/occ files_fulltextsearch:configure "{\"files_pdf\":\"1\",\"files_office\":\"1\"}"
|
||||
|
||||
# Do the index
|
||||
@@ -717,14 +723,33 @@ if [ "$FULLTEXTSEARCH_ENABLED" = 'yes' ]; then
|
||||
fi
|
||||
fi
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/fulltextsearch" ]; then
|
||||
php /var/www/html/occ app:remove fulltextsearch
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ]; then
|
||||
if [ -d "/var/www/html/custom_apps/fulltextsearch" ]; then
|
||||
php /var/www/html/occ app:remove fulltextsearch
|
||||
fi
|
||||
if [ -d "/var/www/html/custom_apps/fulltextsearch_elasticsearch" ]; then
|
||||
php /var/www/html/occ app:remove fulltextsearch_elasticsearch
|
||||
fi
|
||||
if [ -d "/var/www/html/custom_apps/files_fulltextsearch" ]; then
|
||||
php /var/www/html/occ app:remove files_fulltextsearch
|
||||
fi
|
||||
fi
|
||||
if [ -d "/var/www/html/custom_apps/fulltextsearch_elasticsearch" ]; then
|
||||
php /var/www/html/occ app:remove fulltextsearch_elasticsearch
|
||||
fi
|
||||
if [ -d "/var/www/html/custom_apps/files_fulltextsearch" ]; then
|
||||
php /var/www/html/occ app:remove files_fulltextsearch
|
||||
fi
|
||||
|
||||
# Docker socket proxy
|
||||
if version_greater "$installed_version" "27.1.0.0"; then
|
||||
if [ "$DOCKER_SOCKET_PROXY_ENABLED" = 'yes' ]; then
|
||||
if ! [ -d "/var/www/html/custom_apps/app_api" ]; then
|
||||
php /var/www/html/occ app:install app_api
|
||||
elif [ "$(php /var/www/html/occ config:app:get app_api enabled)" != "yes" ]; then
|
||||
php /var/www/html/occ app:enable app_api
|
||||
elif [ "$SKIP_UPDATE" != 1 ]; then
|
||||
php /var/www/html/occ app:update app_api
|
||||
fi
|
||||
else
|
||||
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/app_api" ]; then
|
||||
php /var/www/html/occ app:remove app_api
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -15,9 +15,14 @@ if [ -n "$NEXTCLOUD_EXEC_COMMANDS" ]; then
|
||||
else
|
||||
# Collabora must work also if using manual-install
|
||||
if [ "$COLLABORA_ENABLED" = yes ]; then
|
||||
echo "Activating collabora config..."
|
||||
echo "Activating Collabora config..."
|
||||
php /var/www/html/occ richdocuments:activate-config
|
||||
fi
|
||||
# OnlyOffice must work also if using manual-install
|
||||
if [ "$ONLYOFFICE_ENABLED" = yes ]; then
|
||||
echo "Activating OnlyOffice config..."
|
||||
php /var/www/html/occ onlyoffice:documentserver --check
|
||||
fi
|
||||
fi
|
||||
|
||||
sleep inf
|
||||
|
||||
@@ -34,7 +34,7 @@ fi
|
||||
# Check if /dev/dri device is present and apply correct permissions
|
||||
set -x
|
||||
if ! [ -f "/dev-dri-group-was-added" ] && [ -n "$(find /dev -maxdepth 1 -mindepth 1 -name dri)" ] && [ -n "$(find /dev/dri -maxdepth 1 -mindepth 1 -name renderD128)" ]; then
|
||||
# From https://github.com/pulsejet/memories/wiki/QSV-Transcoding#docker-installations
|
||||
# From https://memories.gallery/hw-transcoding/#docker-installations
|
||||
GID="$(stat -c "%g" /dev/dri/renderD128)"
|
||||
groupadd -g "$GID" render2 || true # sometimes this is needed
|
||||
GROUP="$(getent group "$GID" | cut -d: -f1)"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
FROM alpine:3.18.2
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
COPY --chmod=775 healthcheck.sh /healthcheck.sh
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
@@ -17,5 +18,5 @@ RUN set -ex; \
|
||||
USER 33
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost 7867 || exit 1
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
7
Containers/notify-push/healthcheck.sh
Normal file
7
Containers/notify-push/healthcheck.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
if ! nc -z "$NEXTCLOUD_HOST" 9000; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
nc -z localhost 7867 || exit 1
|
||||
@@ -1,5 +1,5 @@
|
||||
# From https://github.com/ONLYOFFICE/Docker-DocumentServer/blob/master/Dockerfile
|
||||
FROM onlyoffice/documentserver:7.4.0.1
|
||||
FROM onlyoffice/documentserver:7.4.1.1
|
||||
|
||||
# USER root is probably used
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From https://github.com/docker-library/postgres/blob/master/15/alpine/Dockerfile
|
||||
FROM postgres:15.3-alpine
|
||||
FROM postgres:15.4-alpine
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
COPY --chmod=775 healthcheck.sh /healthcheck.sh
|
||||
|
||||
@@ -92,14 +92,14 @@ if ( [ -f "$DATADIR/PG_VERSION" ] && [ "$PG_MAJOR" != "$(cat "$DATADIR/PG_VERSIO
|
||||
|
||||
# Check if the line we grep for later on is there
|
||||
GREP_STRING='Name: oc_appconfig; Type: TABLE; Schema: public; Owner:'
|
||||
if ! grep -q "$GREP_STRING" "$DUMP_FILE"; then
|
||||
if ! grep -qa "$GREP_STRING" "$DUMP_FILE"; then
|
||||
echo "The needed oc_appconfig line is not there which is unexpected."
|
||||
echo "Please report this to https://github.com/nextcloud/all-in-one/issues. Thanks!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Get the Owner
|
||||
DB_OWNER="$(grep "$GREP_STRING" "$DUMP_FILE" | grep -oP 'Owner:.*$' | sed 's|Owner:||;s| ||g')"
|
||||
DB_OWNER="$(grep -a "$GREP_STRING" "$DUMP_FILE" | grep -oP 'Owner:.*$' | sed 's|Owner:||;s| ||g')"
|
||||
if [ "$DB_OWNER" = "$POSTGRES_USER" ]; then
|
||||
echo "Unfortunately was the found database owner of the dump file the same as the POSTGRES_USER $POSTGRES_USER"
|
||||
echo "It is not possible to import a database dump from this database owner."
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From https://github.com/docker-library/redis/blob/master/7.0/alpine/Dockerfile
|
||||
FROM redis:7.0.12-alpine
|
||||
FROM redis:7.2.1-alpine
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
FROM python:3.11.4-alpine3.18
|
||||
FROM python:3.11.5-alpine3.18
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
|
||||
ENV RECORDING_VERSION v17.0.2
|
||||
ENV RECORDING_VERSION v17.1.0
|
||||
ENV ALLOW_ALL false
|
||||
ENV HPB_PROTOCOL https
|
||||
ENV SKIP_VERIFY false
|
||||
|
||||
@@ -12,6 +12,10 @@ elif [ -z "$INTERNAL_SECRET" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$HPB_DOMAIN" ]; then
|
||||
export HPB_DOMAIN="$NC_DOMAIN"
|
||||
fi
|
||||
|
||||
cat << RECORDING_CONF > "/conf/recording.conf"
|
||||
[logs]
|
||||
# 30 means Warning
|
||||
@@ -40,7 +44,7 @@ skipverify = ${SKIP_VERIFY}
|
||||
signalings = signaling-1
|
||||
|
||||
[signaling-1]
|
||||
url = ${HPB_PROTOCOL}://${NC_DOMAIN}${HPB_PATH}
|
||||
url = ${HPB_PROTOCOL}://${HPB_DOMAIN}${HPB_PATH}
|
||||
internalsecret = ${INTERNAL_SECRET}
|
||||
|
||||
[ffmpeg]
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
FROM nats:2.9.20-scratch as nats
|
||||
FROM nats:2.10.0-scratch as nats
|
||||
FROM eturnal/eturnal:1.11.1 AS eturnal
|
||||
FROM strukturag/nextcloud-spreed-signaling:1.1.3 as signaling
|
||||
FROM alpine:3.18.2 as janus
|
||||
FROM alpine:3.18.3 as janus
|
||||
|
||||
ARG JANUS_VERSION=v0.13.4
|
||||
ARG JANUS_VERSION=v0.14.0
|
||||
WORKDIR /src
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
@@ -32,8 +33,16 @@ RUN set -ex; \
|
||||
make configs; \
|
||||
rename -v ".jcfg.sample" ".jcfg" /usr/local/etc/janus/*.jcfg.sample
|
||||
|
||||
FROM coturn/coturn:4.6.2-alpine3.18
|
||||
USER root
|
||||
FROM alpine:3.18.2
|
||||
ENV ETURNAL_ETC_DIR="/conf"
|
||||
COPY --from=janus /usr/local /usr/local
|
||||
COPY --from=eturnal /opt/eturnal /opt/eturnal
|
||||
COPY --from=nats /nats-server /usr/local/bin/nats-server
|
||||
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
COPY --chmod=775 healthcheck.sh /healthcheck.sh
|
||||
COPY --chmod=664 supervisord.conf /supervisord.conf
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
@@ -57,7 +66,7 @@ RUN set -ex; \
|
||||
libwebsockets \
|
||||
\
|
||||
shadow; \
|
||||
useradd --system talk; \
|
||||
useradd --system eturnal; \
|
||||
apk del --no-cache \
|
||||
shadow; \
|
||||
\
|
||||
@@ -65,7 +74,8 @@ RUN set -ex; \
|
||||
echo "root:$(openssl rand -base64 12)" | chpasswd; \
|
||||
\
|
||||
touch \
|
||||
/etc/nats.conf; \
|
||||
/etc/nats.conf \
|
||||
/etc/eturnal.yml; \
|
||||
echo "listen: 127.0.0.1:4222" | tee /etc/nats.conf; \
|
||||
mkdir -p \
|
||||
/var/tmp \
|
||||
@@ -74,32 +84,24 @@ RUN set -ex; \
|
||||
/var/log/supervisord \
|
||||
/var/run/supervisord \
|
||||
/usr/local/lib/janus/loggers; \
|
||||
chown talk:talk -R \
|
||||
chown eturnal:eturnal -R \
|
||||
/usr \
|
||||
/opt/eturnal \
|
||||
/etc/nats.conf \
|
||||
/var/lib/turn \
|
||||
/var/log/supervisord \
|
||||
/var/run/supervisord; \
|
||||
chmod 777 -R \
|
||||
/tmp \
|
||||
/conf \
|
||||
/opt/eturnal \
|
||||
/var/run/supervisord \
|
||||
/var/lib/turn \
|
||||
/var/log/supervisord;
|
||||
/var/log/supervisord; \
|
||||
ln -s /opt/eturnal/bin/stun /usr/local/bin/stun; \
|
||||
ln -s /opt/eturnal/bin/eturnalctl /usr/local/bin/eturnalctl
|
||||
|
||||
COPY --from=janus /usr/local /usr/local
|
||||
COPY --from=nats /nats-server /usr/local/bin/nats-server
|
||||
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
COPY --chmod=664 supervisord.conf /supervisord.conf
|
||||
|
||||
# Set default talk port https://github.com/nextcloud/all-in-one/issues/1011
|
||||
ENV TALK_PORT=3478
|
||||
|
||||
USER talk
|
||||
USER eturnal
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
CMD ["supervisord", "-c", "/supervisord.conf"]
|
||||
|
||||
HEALTHCHECK CMD (nc -z localhost 8081 && nc -z localhost 8188 && nc -z localhost 4222 && nc -z localhost "$TALK_PORT" && nc -z "$NC_DOMAIN" "$TALK_PORT") || exit 1
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
11
Containers/talk/healthcheck.sh
Normal file
11
Containers/talk/healthcheck.sh
Normal file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
nc -z localhost 8081 || exit 1
|
||||
nc -z localhost 8188 || exit 1
|
||||
nc -z localhost 4222 || exit 1
|
||||
nc -z localhost "$TALK_PORT" || exit 1
|
||||
eturnalctl status || exit 1
|
||||
if ! nc -z "$NC_DOMAIN" "$TALK_PORT"; then
|
||||
echo "Could not reach $NC_DOMAIN on port $TALK_PORT."
|
||||
exit 1
|
||||
fi
|
||||
@@ -4,6 +4,9 @@
|
||||
if [ -z "$NC_DOMAIN" ]; then
|
||||
echo "You need to provide the NC_DOMAIN."
|
||||
exit 1
|
||||
elif [ -z "$TALK_PORT" ]; then
|
||||
echo "You need to provide the TALK_PORT."
|
||||
exit 1
|
||||
elif [ -z "$TURN_SECRET" ]; then
|
||||
echo "You need to provide the TURN_SECRET."
|
||||
exit 1
|
||||
@@ -16,43 +19,37 @@ elif [ -z "$INTERNAL_SECRET" ]; then
|
||||
fi
|
||||
|
||||
set -x
|
||||
IPv4_ADDRESS_TALK="$(dig nextcloud-aio-talk A +short)"
|
||||
IPv4_ADDRESS_TALK="$(dig nextcloud-aio-talk IN A +short | grep '^[0-9.]\+$' | sort | head -n1)"
|
||||
IPv6_ADDRESS_TALK="$(dig nextcloud-aio-talk AAAA +short | grep '^[0-9a-f:]\+$' | sort | head -n1)"
|
||||
set +x
|
||||
|
||||
# Turn
|
||||
cat << TURN_CONF > "/conf/turnserver.conf"
|
||||
listening-port=$TALK_PORT
|
||||
fingerprint
|
||||
use-auth-secret
|
||||
static-auth-secret=$TURN_SECRET
|
||||
realm=$NC_DOMAIN
|
||||
total-quota=0
|
||||
bps-capacity=0
|
||||
stale-nonce
|
||||
no-multicast-peers
|
||||
simple-log
|
||||
pidfile=/var/tmp/turnserver.pid
|
||||
no-tls
|
||||
no-dtls
|
||||
userdb=/var/lib/turn/turndb
|
||||
# Based on https://nextcloud-talk.readthedocs.io/en/latest/TURN/#turn-server-and-internal-networks
|
||||
allowed-peer-ip=$IPv4_ADDRESS_TALK
|
||||
denied-peer-ip=0.0.0.0-0.255.255.255
|
||||
denied-peer-ip=10.0.0.0-10.255.255.255
|
||||
denied-peer-ip=100.64.0.0-100.127.255.255
|
||||
denied-peer-ip=127.0.0.0-127.255.255.255
|
||||
denied-peer-ip=169.254.0.0-169.254.255.255
|
||||
denied-peer-ip=172.16.0.0-172.31.255.255
|
||||
denied-peer-ip=192.0.0.0-192.0.0.255
|
||||
denied-peer-ip=192.0.2.0-192.0.2.255
|
||||
denied-peer-ip=192.88.99.0-192.88.99.255
|
||||
denied-peer-ip=192.168.0.0-192.168.255.255
|
||||
denied-peer-ip=198.18.0.0-198.19.255.255
|
||||
denied-peer-ip=198.51.100.0-198.51.100.255
|
||||
denied-peer-ip=203.0.113.0-203.0.113.255
|
||||
denied-peer-ip=240.0.0.0-255.255.255.255
|
||||
cat << TURN_CONF > "/conf/eturnal.yml"
|
||||
eturnal:
|
||||
listen:
|
||||
- ip: "::"
|
||||
port: $TALK_PORT
|
||||
transport: udp
|
||||
- ip: "::"
|
||||
port: $TALK_PORT
|
||||
transport: tcp
|
||||
log_dir: stdout
|
||||
log_level: warning
|
||||
secret: "$TURN_SECRET"
|
||||
relay_ipv4_addr: "$IPv4_ADDRESS_TALK"
|
||||
relay_ipv6_addr: "$IPv6_ADDRESS_TALK"
|
||||
blacklist:
|
||||
- recommended
|
||||
whitelist:
|
||||
- 127.0.0.1
|
||||
- ::1
|
||||
- "$IPv4_ADDRESS_TALK"
|
||||
- "$IPv6_ADDRESS_TALK"
|
||||
TURN_CONF
|
||||
|
||||
# Remove empty lines so that the config is not invalid
|
||||
sed -i '/""/d' /conf/eturnal.yml
|
||||
|
||||
# Signling
|
||||
cat << SIGNALING_CONF > "/conf/signaling.conf"
|
||||
[http]
|
||||
|
||||
@@ -7,12 +7,12 @@ logfile_maxbytes=50MB
|
||||
logfile_backups=10
|
||||
loglevel=error
|
||||
|
||||
[program:turnserver]
|
||||
[program:eturnal]
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes=0
|
||||
stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
command=turnserver -c /conf/turnserver.conf
|
||||
command=eturnalctl foreground
|
||||
|
||||
[program:nats-server]
|
||||
stdout_logfile=/dev/stdout
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# From https://github.com/containrrr/watchtower/blob/main/dockerfiles/Dockerfile.self-contained
|
||||
FROM containrrr/watchtower:1.5.3 as watchtower
|
||||
|
||||
FROM alpine:3.18.2
|
||||
FROM alpine:3.18.3
|
||||
|
||||
RUN apk add --no-cache bash
|
||||
COPY --from=watchtower /watchtower /watchtower
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<category>monitoring</category>
|
||||
<bugs>https://github.com/nextcloud/all-in-one/issues</bugs>
|
||||
<dependencies>
|
||||
<nextcloud min-version="25" max-version="26"/>
|
||||
<nextcloud min-version="26" max-version="27"/>
|
||||
</dependencies>
|
||||
|
||||
<settings>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
services:
|
||||
nextcloud:
|
||||
nextcloud-aio-mastercontainer:
|
||||
image: nextcloud/all-in-one:latest
|
||||
init: true
|
||||
restart: always
|
||||
container_name: nextcloud-aio-mastercontainer # This line is not allowed to be changed as otherwise AIO will not work correctly
|
||||
volumes:
|
||||
@@ -26,6 +27,7 @@ services:
|
||||
# - NEXTCLOUD_ADDITIONAL_APKS=imagemagick # This allows to add additional packages to the Nextcloud container permanently. Default is imagemagick but can be overwritten by modifying this value. See https://github.com/nextcloud/all-in-one#how-to-add-os-packages-permanently-to-the-nextcloud-container
|
||||
# - NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS=imagick # This allows to add additional php extensions to the Nextcloud container permanently. Default is imagick but can be overwritten by modifying this value. See https://github.com/nextcloud/all-in-one#how-to-add-php-extensions-permanently-to-the-nextcloud-container
|
||||
# - NEXTCLOUD_ENABLE_DRI_DEVICE=true # This allows to enable the /dev/dri device in the Nextcloud container. ⚠️⚠️⚠️ Warning: this only works if the '/dev/dri' device is present on the host! If it should not exist on your host, don't set this to true as otherwise the Nextcloud container will fail to start! See https://github.com/nextcloud/all-in-one#how-to-enable-hardware-transcoding-for-nextcloud
|
||||
# - NEXTCLOUD_KEEP_DISABLED_APPS=false # Setting this to true will keep Nextcloud apps that are disabled in the AIO interface and not uninstall them if they should be installed. See https://github.com/nextcloud/all-in-one#how-to-keep-disabled-apps
|
||||
# - TALK_PORT=3478 # This allows to adjust the port that the talk container is using. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-talk-port
|
||||
# - WATCHTOWER_DOCKER_SOCKET_PATH=/var/run/docker.sock # Needs to be specified if the docker socket on the host is not located in the default '/var/run/docker.sock'. Otherwise mastercontainer updates will fail. For macos it needs to be '/var/run/docker.sock'
|
||||
# networks: # Is needed when you want to create the nextcloud-aio network with ipv6-support using this file, see the network config at the bottom of the file
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
If you want to switch to the develop channel, you simply stop and delete the mastercontainer and create a new one with a changed tag to develop:
|
||||
```shell
|
||||
sudo docker run \
|
||||
--init \
|
||||
--sig-proxy=false \
|
||||
--name nextcloud-aio-mastercontainer \
|
||||
--restart always \
|
||||
|
||||
@@ -1,12 +1,23 @@
|
||||
services:
|
||||
nextcloud-aio-apache:
|
||||
depends_on:
|
||||
- nextcloud-aio-onlyoffice
|
||||
- nextcloud-aio-collabora
|
||||
- nextcloud-aio-talk
|
||||
- nextcloud-aio-nextcloud
|
||||
- nextcloud-aio-notify-push
|
||||
nextcloud-aio-onlyoffice:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-collabora:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-talk:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-nextcloud:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-notify-push:
|
||||
condition: service_started
|
||||
required: false
|
||||
image: nextcloud/aio-apache:latest
|
||||
init: true
|
||||
ports:
|
||||
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/tcp
|
||||
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/udp
|
||||
@@ -37,6 +48,7 @@ services:
|
||||
|
||||
nextcloud-aio-database:
|
||||
image: nextcloud/aio-postgresql:latest
|
||||
init: true
|
||||
expose:
|
||||
- "5432"
|
||||
volumes:
|
||||
@@ -59,13 +71,26 @@ services:
|
||||
|
||||
nextcloud-aio-nextcloud:
|
||||
depends_on:
|
||||
- nextcloud-aio-database
|
||||
- nextcloud-aio-redis
|
||||
- nextcloud-aio-clamav
|
||||
- nextcloud-aio-fulltextsearch
|
||||
- nextcloud-aio-talk-recording
|
||||
- nextcloud-aio-imaginary
|
||||
nextcloud-aio-database:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-redis:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-clamav:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-fulltextsearch:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-talk-recording:
|
||||
condition: service_started
|
||||
required: false
|
||||
nextcloud-aio-imaginary:
|
||||
condition: service_started
|
||||
required: false
|
||||
image: nextcloud/aio-nextcloud:latest
|
||||
init: true
|
||||
expose:
|
||||
- "9000"
|
||||
volumes:
|
||||
@@ -115,12 +140,15 @@ services:
|
||||
- TALK_RECORDING_ENABLED=${TALK_RECORDING_ENABLED}
|
||||
- RECORDING_SECRET=${RECORDING_SECRET}
|
||||
- TALK_RECORDING_HOST=nextcloud-aio-talk-recording
|
||||
- FULLTEXTSEARCH_PASSWORD=${FULLTEXTSEARCH_PASSWORD}
|
||||
- REMOVE_DISABLED_APPS=${REMOVE_DISABLED_APPS}
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
|
||||
nextcloud-aio-notify-push:
|
||||
image: nextcloud/aio-notify-push:latest
|
||||
init: true
|
||||
expose:
|
||||
- "7867"
|
||||
volumes:
|
||||
@@ -141,6 +169,7 @@ services:
|
||||
|
||||
nextcloud-aio-redis:
|
||||
image: nextcloud/aio-redis:latest
|
||||
init: true
|
||||
expose:
|
||||
- "6379"
|
||||
environment:
|
||||
@@ -155,6 +184,7 @@ services:
|
||||
|
||||
nextcloud-aio-collabora:
|
||||
image: nextcloud/aio-collabora:latest
|
||||
init: true
|
||||
expose:
|
||||
- "9980"
|
||||
environment:
|
||||
@@ -172,6 +202,7 @@ services:
|
||||
|
||||
nextcloud-aio-talk:
|
||||
image: nextcloud/aio-talk:latest
|
||||
init: true
|
||||
ports:
|
||||
- ${TALK_PORT}:${TALK_PORT}/tcp
|
||||
- ${TALK_PORT}:${TALK_PORT}/udp
|
||||
@@ -194,12 +225,13 @@ services:
|
||||
tmpfs:
|
||||
- /var/log/supervisord
|
||||
- /var/run/supervisord
|
||||
- /opt/eturnal/run
|
||||
- /conf
|
||||
- /var/lib/turn
|
||||
- /tmp
|
||||
|
||||
nextcloud-aio-talk-recording:
|
||||
image: nextcloud/aio-talk-recording:latest
|
||||
init: true
|
||||
expose:
|
||||
- "1234"
|
||||
environment:
|
||||
@@ -220,6 +252,7 @@ services:
|
||||
|
||||
nextcloud-aio-clamav:
|
||||
image: nextcloud/aio-clamav:latest
|
||||
init: true
|
||||
expose:
|
||||
- "3310"
|
||||
environment:
|
||||
@@ -240,6 +273,7 @@ services:
|
||||
|
||||
nextcloud-aio-onlyoffice:
|
||||
image: nextcloud/aio-onlyoffice:latest
|
||||
init: true
|
||||
expose:
|
||||
- "80"
|
||||
environment:
|
||||
@@ -257,6 +291,7 @@ services:
|
||||
|
||||
nextcloud-aio-imaginary:
|
||||
image: nextcloud/aio-imaginary:latest
|
||||
init: true
|
||||
expose:
|
||||
- "9000"
|
||||
environment:
|
||||
@@ -274,13 +309,20 @@ services:
|
||||
|
||||
nextcloud-aio-fulltextsearch:
|
||||
image: nextcloud/aio-fulltextsearch:latest
|
||||
init: false
|
||||
expose:
|
||||
- "9200"
|
||||
environment:
|
||||
- TZ=${TIMEZONE}
|
||||
- ES_JAVA_OPTS=-Xms512M -Xmx512M
|
||||
- bootstrap.memory_lock=true
|
||||
- cluster.name=nextcloud-aio
|
||||
- discovery.type=single-node
|
||||
- ES_JAVA_OPTS=-Xms1024M -Xmx1024M
|
||||
- POSTGRES_HOST=nextcloud-aio-database
|
||||
- logger.org.elasticsearch.discovery=WARN
|
||||
- http.port=9200
|
||||
- xpack.license.self_generated.type=basic
|
||||
- xpack.security.enabled=false
|
||||
- FULLTEXTSEARCH_PASSWORD=${FULLTEXTSEARCH_PASSWORD}
|
||||
volumes:
|
||||
- nextcloud_aio_elasticsearch:/usr/share/elasticsearch/data:rw
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
DATABASE_PASSWORD= # TODO! This needs to be a unique and good password!
|
||||
FULLTEXTSEARCH_PASSWORD= # TODO! This needs to be a unique and good password!
|
||||
NC_DOMAIN=yourdomain.com # TODO! Needs to be changed to the domain that you want to use for Nextcloud.
|
||||
NEXTCLOUD_PASSWORD= # TODO! This is the password of the initially created Nextcloud admin with username "admin".
|
||||
ONLYOFFICE_SECRET= # TODO! This needs to be a unique and good password!
|
||||
@@ -32,6 +33,7 @@ NEXTCLOUD_MOUNT=/mnt/ # This allows the Nextcloud container to access d
|
||||
NEXTCLOUD_STARTUP_APPS="deck twofactor_totp tasks calendar contacts notes" # Allows to modify the Nextcloud apps that are installed on starting AIO the first time
|
||||
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.
|
||||
NEXTCLOUD_UPLOAD_LIMIT=10G # This allows to change the upload limit of the Nextcloud container
|
||||
REMOVE_DISABLED_APPS=yes # Setting this to no keep Nextcloud apps that are disabled via their switch and not uninstall them if they should be installed in Nextcloud.
|
||||
TALK_PORT=3478 # This allows to adjust the port that the talk container is using.
|
||||
UPDATE_NEXTCLOUD_APPS="no" # When setting to "yes" (with quotes), it will automatically update all installed Nextcloud apps upon container startup on saturdays.
|
||||
IPV6_NETWORK=fd12:3456:789a:2::/64 # IPv6 subnet to use
|
||||
|
||||
@@ -20,6 +20,9 @@ OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[].nextcloud_exec_commands)')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-watchtower"))')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-domaincheck"))')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-borgbackup"))')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-docker-socket-proxy"))')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq '.services[] |= if has("depends_on") then .depends_on |= if contains(["nextcloud-aio-docker-socket-proxy"]) then del(.[index("nextcloud-aio-docker-socket-proxy")]) else . end else . end')"
|
||||
OUTPUT="$(echo "$OUTPUT" | jq '.services[] |= if has("depends_on") then .depends_on |= map({ (.): { "condition": "service_started", "required": false } }) else . end' | jq '.services[] |= if has("depends_on") then .depends_on |= reduce .[] as $item ({}; . + $item) else . end')"
|
||||
|
||||
snap install yq
|
||||
mkdir -p ./manual-install
|
||||
@@ -34,9 +37,7 @@ sed -i 's|- source: |- |' containers.yml
|
||||
sed -i 's|- ip_binding: |- |' containers.yml
|
||||
sed -i '/AIO_TOKEN/d' containers.yml
|
||||
sed -i '/AIO_URL/d' containers.yml
|
||||
|
||||
sed -i '/AIO_TOKEN/d' sample.conf
|
||||
sed -i '/AIO_URL/d' sample.conf
|
||||
sed -i '/DOCKER_SOCKET_PROXY_ENABLED/d' containers.yml
|
||||
|
||||
TCP="$(grep -oP '[%A-Z0-9_]+/tcp' containers.yml | sort -u)"
|
||||
mapfile -t TCP <<< "$TCP"
|
||||
@@ -89,6 +90,7 @@ sed -i 's|NEXTCLOUD_STARTUP_APPS=|NEXTCLOUD_STARTUP_APPS="deck twofactor_totp ta
|
||||
sed -i 's|NEXTCLOUD_ADDITIONAL_APKS=|NEXTCLOUD_ADDITIONAL_APKS=imagemagick # This allows to add additional packages to the Nextcloud container permanently. Default is imagemagick but can be overwritten by modifying this value.|' sample.conf
|
||||
sed -i 's|NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS=|NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS=imagick # This allows to add additional php extensions to the Nextcloud container permanently. Default is imagick but can be overwritten by modifying this value.|' sample.conf
|
||||
sed -i 's|INSTALL_LATEST_MAJOR=|INSTALL_LATEST_MAJOR=no # Setting this to yes will install the latest Major Nextcloud version upon the first installation|' sample.conf
|
||||
sed -i 's|REMOVE_DISABLED_APPS=|REMOVE_DISABLED_APPS=yes # Setting this to no keep Nextcloud apps that are disabled via their switch and not uninstall them if they should be installed in Nextcloud.|' sample.conf
|
||||
sed -i 's|=$|= # TODO! This needs to be a unique and good password!|' sample.conf
|
||||
echo 'IPV6_NETWORK=fd12:3456:789a:2::/64 # IPv6 subnet to use' >> sample.conf
|
||||
|
||||
@@ -111,7 +113,7 @@ for name in "${NAMES[@]}"
|
||||
do
|
||||
OUTPUT="$(echo "$OUTPUT" | sed "/container_name.*$name$/i\ \ $name:")"
|
||||
if [ "$name" != "nextcloud-aio-apache" ]; then
|
||||
OUTPUT="$(echo "$OUTPUT" | sed "/ $name:/i\ ")"
|
||||
OUTPUT="$(echo "$OUTPUT" | sed "/^ $name:/i\ ")"
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ The only way to fix this on your side is upgrading regularly (e.g. by enabling d
|
||||
1. Run the following commands in order to reverse engineer the Nextcloud container:
|
||||
```bash
|
||||
sudo docker pull assaflavie/runlike
|
||||
echo '#/bin/bash' > /tmp/nextcloud-aio-nextcloud
|
||||
echo '#!/bin/bash' > /tmp/nextcloud-aio-nextcloud
|
||||
sudo docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike -p nextcloud-aio-nextcloud >> /tmp/nextcloud-aio-nextcloud
|
||||
sudo chown root:root /tmp/nextcloud-aio-nextcloud
|
||||
```
|
||||
|
||||
@@ -7,7 +7,7 @@ Below is described more in detail how the the second way works.
|
||||
|
||||
## Run multiple AIO instances on the same server with docker rootless
|
||||
1. Create as many linux users as you need first. The easiest way is to use `sudo adduser` and follow the setup for that. Make sure to create a strong unique password for each of them and write it down!
|
||||
1. Log in as each of the users e.g. by opening a new SSH connection and install docker rootless for each of them by following step 0-4 of the [docker rootless documentation](./docker-rootless.md).
|
||||
1. Log in as each of the users by opening a new SSH connection as the user and install docker rootless for each of them by following step 0-4 of the [docker rootless documentation](./docker-rootless.md).
|
||||
1. Then install AIO in reverse proxy mode by using the command that is descriebed in step 2 and 3 of the [reverse proxy documentation](./reverse-proxy.md) but use a different `APACHE_PORT` and [`TALK_PORT`](https://github.com/nextcloud/all-in-one#how-to-adjust-the-talk-port) for each instance as otherwise it will bug out. Also make sure to adjust the docker socket and `WATCHTOWER_DOCKER_SOCKET_PATH` correctly for each of them by following step 6 of the [docker rootless documentation](./docker-rootless.md). Additionally, modify `--publish 8080:8080` to a different port for each container, e.g. `8081:8080` as otherwise it will not work.<br>
|
||||
**⚠️ Please note:** If you want to adjust the `NEXTCLOUD_DATADIR`, make sure to apply the correct permissions to the chosen path as documented at the bottom of the [docker rootless documentation](./docker-rootless.md). Also for the built-in backup to work, the target path needs to have the correct permissions as documented there, too.
|
||||
1. Now install your webserver of choice on the host system. It is recommended to use caddy for this as it is by far the easiest solution. You can do so by following https://caddyserver.com/docs/install#debian-ubuntu-raspbian or below. (It needs to be installed directly on the host or on a different server in the same network).
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
name: nextcloud-aio-helm-chart
|
||||
description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose
|
||||
version: 6.3.0
|
||||
version: 7.2.1
|
||||
apiVersion: v2
|
||||
keywords:
|
||||
- latest
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
name: nextcloud-aio-apache
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -72,7 +72,7 @@ spec:
|
||||
value: nextcloud-aio-talk
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-apache:20230720_134150-latest
|
||||
image: nextcloud/aio-apache:20230916_091439-latest
|
||||
name: nextcloud-aio-apache
|
||||
ports:
|
||||
- containerPort: {{ .Values.APACHE_PORT }}
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
name: nextcloud-aio-apache
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
name: nextcloud-aio-apache
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
ports:
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-clamav
|
||||
name: nextcloud-aio-clamav
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -48,7 +48,7 @@ spec:
|
||||
value: "90"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-clamav:20230720_134150-latest
|
||||
image: nextcloud/aio-clamav:20230916_091439-latest
|
||||
name: nextcloud-aio-clamav
|
||||
ports:
|
||||
- containerPort: 3310
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-clamav
|
||||
name: nextcloud-aio-clamav
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-clamav
|
||||
name: nextcloud-aio-clamav
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "3310"
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-collabora
|
||||
name: nextcloud-aio-collabora
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -37,7 +37,7 @@ spec:
|
||||
value: --o:ssl.enable=false --o:ssl.termination=true --o:mount_jail_tree=false --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
|
||||
- name: server_name
|
||||
value: "{{ .Values.NC_DOMAIN }}"
|
||||
image: nextcloud/aio-collabora:20230720_134150-latest
|
||||
image: nextcloud/aio-collabora:20230916_091439-latest
|
||||
name: nextcloud-aio-collabora
|
||||
ports:
|
||||
- containerPort: 9980
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-collabora
|
||||
name: nextcloud-aio-collabora
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9980"
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database
|
||||
name: nextcloud-aio-database
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -67,7 +67,7 @@ spec:
|
||||
value: nextcloud
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-postgresql:20230720_134150-latest
|
||||
image: nextcloud/aio-postgresql:20230916_091439-latest
|
||||
name: nextcloud-aio-database
|
||||
ports:
|
||||
- containerPort: 5432
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database-dump
|
||||
name: nextcloud-aio-database-dump
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database
|
||||
name: nextcloud-aio-database
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database
|
||||
name: nextcloud-aio-database
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "5432"
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-elasticsearch
|
||||
name: nextcloud-aio-elasticsearch
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-fulltextsearch
|
||||
name: nextcloud-aio-fulltextsearch
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -36,14 +36,26 @@ spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: ES_JAVA_OPTS
|
||||
value: -Xms1024M -Xmx1024M
|
||||
- name: POSTGRES_HOST
|
||||
value: nextcloud-aio-database
|
||||
value: -Xms512M -Xmx512M
|
||||
- name: FULLTEXTSEARCH_PASSWORD
|
||||
value: "{{ .Values.FULLTEXTSEARCH_PASSWORD }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
- name: bootstrap.memory_lock
|
||||
value: "true"
|
||||
- name: cluster.name
|
||||
value: nextcloud-aio
|
||||
- name: discovery.type
|
||||
value: single-node
|
||||
image: nextcloud/aio-fulltextsearch:20230720_134150-latest
|
||||
- name: http.port
|
||||
value: "9200"
|
||||
- name: logger.org.elasticsearch.discovery
|
||||
value: WARN
|
||||
- name: xpack.license.self_generated.type
|
||||
value: basic
|
||||
- name: xpack.security.enabled
|
||||
value: "false"
|
||||
image: nextcloud/aio-fulltextsearch:20230916_091439-latest
|
||||
name: nextcloud-aio-fulltextsearch
|
||||
ports:
|
||||
- containerPort: 9200
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-fulltextsearch
|
||||
name: nextcloud-aio-fulltextsearch
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9200"
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-imaginary
|
||||
name: nextcloud-aio-imaginary
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -37,7 +37,7 @@ spec:
|
||||
- env:
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-imaginary:20230720_134150-latest
|
||||
image: nextcloud/aio-imaginary:20230916_091439-latest
|
||||
name: nextcloud-aio-imaginary
|
||||
ports:
|
||||
- containerPort: 9000
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-imaginary
|
||||
name: nextcloud-aio-imaginary
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9000"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: {{ values.NAMESPACE }}
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
name: {{ .Values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec: {}
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud-data
|
||||
name: nextcloud-aio-nextcloud-data
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
name: nextcloud-aio-nextcloud
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -57,6 +57,8 @@ spec:
|
||||
value: "{{ .Values.FULLTEXTSEARCH_ENABLED }}"
|
||||
- name: FULLTEXTSEARCH_HOST
|
||||
value: nextcloud-aio-fulltextsearch
|
||||
- name: FULLTEXTSEARCH_PASSWORD
|
||||
value: "{{ .Values.FULLTEXTSEARCH_PASSWORD }}"
|
||||
- name: IMAGINARY_ENABLED
|
||||
value: "{{ .Values.IMAGINARY_ENABLED }}"
|
||||
- name: IMAGINARY_HOST
|
||||
@@ -97,6 +99,8 @@ spec:
|
||||
value: nextcloud-aio-redis
|
||||
- name: REDIS_HOST_PASSWORD
|
||||
value: "{{ .Values.REDIS_PASSWORD }}"
|
||||
- name: REMOVE_DISABLED_APPS
|
||||
value: "{{ .Values.REMOVE_DISABLED_APPS }}"
|
||||
- name: SIGNALING_SECRET
|
||||
value: "{{ .Values.SIGNALING_SECRET }}"
|
||||
- name: STARTUP_APPS
|
||||
@@ -117,7 +121,7 @@ spec:
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
- name: UPDATE_NEXTCLOUD_APPS
|
||||
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
|
||||
image: nextcloud/aio-nextcloud:20230720_134150-latest
|
||||
image: nextcloud/aio-nextcloud:20230916_091439-latest
|
||||
name: nextcloud-aio-nextcloud
|
||||
ports:
|
||||
- containerPort: 9000
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
name: nextcloud-aio-nextcloud
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
name: nextcloud-aio-nextcloud
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9000"
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
name: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-notify-push
|
||||
name: nextcloud-aio-notify-push
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -50,7 +50,7 @@ spec:
|
||||
value: nextcloud-aio-redis
|
||||
- name: REDIS_HOST_PASSWORD
|
||||
value: "{{ .Values.REDIS_PASSWORD }}"
|
||||
image: nextcloud/aio-notify-push:20230720_134150-latest
|
||||
image: nextcloud/aio-notify-push:20230916_091439-latest
|
||||
name: nextcloud-aio-notify-push
|
||||
ports:
|
||||
- containerPort: 7867
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-notify-push
|
||||
name: nextcloud-aio-notify-push
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "7867"
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-onlyoffice
|
||||
name: nextcloud-aio-onlyoffice
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -43,7 +43,7 @@ spec:
|
||||
value: "{{ .Values.ONLYOFFICE_SECRET }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-onlyoffice:20230720_134150-latest
|
||||
image: nextcloud/aio-onlyoffice:20230916_091439-latest
|
||||
name: nextcloud-aio-onlyoffice
|
||||
ports:
|
||||
- containerPort: 80
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-onlyoffice
|
||||
name: nextcloud-aio-onlyoffice
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-onlyoffice
|
||||
name: nextcloud-aio-onlyoffice
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "80"
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-redis
|
||||
name: nextcloud-aio-redis
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,7 +16,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -38,7 +38,7 @@ spec:
|
||||
value: "{{ .Values.REDIS_PASSWORD }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-redis:20230720_134150-latest
|
||||
image: nextcloud/aio-redis:20230916_091439-latest
|
||||
name: nextcloud-aio-redis
|
||||
ports:
|
||||
- containerPort: 6379
|
||||
|
||||
@@ -4,7 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-redis
|
||||
name: nextcloud-aio-redis
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,12 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-redis
|
||||
name: nextcloud-aio-redis
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "6379"
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-talk
|
||||
name: nextcloud-aio-talk
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -59,7 +59,7 @@ spec:
|
||||
value: "{{ .Values.TURN_SECRET }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-talk:20230720_134150-latest
|
||||
image: nextcloud/aio-talk:20230916_091439-latest
|
||||
name: nextcloud-aio-talk
|
||||
ports:
|
||||
- containerPort: {{ .Values.TALK_PORT }}
|
||||
@@ -78,9 +78,9 @@ spec:
|
||||
name: nextcloud-aio-talk-tmpfs0
|
||||
- mountPath: /var/run/supervisord
|
||||
name: nextcloud-aio-talk-tmpfs1
|
||||
- mountPath: /conf
|
||||
- mountPath: /opt/eturnal/run
|
||||
name: nextcloud-aio-talk-tmpfs2
|
||||
- mountPath: /var/lib/turn
|
||||
- mountPath: /conf
|
||||
name: nextcloud-aio-talk-tmpfs3
|
||||
- mountPath: /tmp
|
||||
name: nextcloud-aio-talk-tmpfs4
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-talk-recording
|
||||
name: nextcloud-aio-talk-recording
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -17,7 +17,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -46,7 +46,7 @@ spec:
|
||||
value: "{{ .Values.RECORDING_SECRET }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-talk-recording:20230720_134150-latest
|
||||
image: nextcloud/aio-talk-recording:20230916_091439-latest
|
||||
name: nextcloud-aio-talk-recording
|
||||
ports:
|
||||
- containerPort: 1234
|
||||
|
||||
@@ -3,12 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-talk-recording
|
||||
name: nextcloud-aio-talk-recording
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "1234"
|
||||
|
||||
@@ -4,12 +4,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-talk
|
||||
name: nextcloud-aio-talk-public
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
ports:
|
||||
@@ -27,12 +27,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ values.NAMESPACE }}
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-talk
|
||||
name: nextcloud-aio-talk
|
||||
namespace: {{ values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "8081"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user