mirror of
https://github.com/nextcloud/all-in-one.git
synced 2026-05-21 19:00:33 +00:00
Compare commits
470 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 | ||
|
|
f86032a7e4 | ||
|
|
2f842e7266 | ||
|
|
2c26a1957c | ||
|
|
5b7c9a096f | ||
|
|
86f606b407 | ||
|
|
dc36781035 | ||
|
|
00557fecd2 | ||
|
|
de14dd2052 | ||
|
|
40dfd4cdf1 | ||
|
|
fb6ca4b6af | ||
|
|
b5831bf346 | ||
|
|
c7363d9ec1 | ||
|
|
9cdcb6be92 | ||
|
|
5005f09dea | ||
|
|
a51ad39dee | ||
|
|
a262d1f210 | ||
|
|
0c5cb7de25 | ||
|
|
7bb7545972 | ||
|
|
2399728731 | ||
|
|
d91538dd78 | ||
|
|
8d77e179ab | ||
|
|
0406f91122 | ||
|
|
1afbfdc9c5 | ||
|
|
91bac10c9a | ||
|
|
f56682b774 | ||
|
|
4065ab659c | ||
|
|
7824060a6c | ||
|
|
7ab1e951f5 | ||
|
|
a529fb9b39 | ||
|
|
91ee3495e1 | ||
|
|
77dbc79115 | ||
|
|
54d9181f14 | ||
|
|
7c38050f58 | ||
|
|
e4f68f7636 | ||
|
|
d2be89c502 | ||
|
|
70b46093ab | ||
|
|
3dce533874 | ||
|
|
87a2d6fd8e | ||
|
|
c5697a8637 | ||
|
|
71481cd731 | ||
|
|
8bf8e3f562 | ||
|
|
b1b96a5d8c | ||
|
|
7c55c449b8 | ||
|
|
3e3dbf26b5 | ||
|
|
9a1de583c6 | ||
|
|
4a60b4d004 | ||
|
|
6bab59c5f9 | ||
|
|
1d67da4bd5 | ||
|
|
2d0b92db77 | ||
|
|
6272d8d223 | ||
|
|
d5f309df3a | ||
|
|
bb63abd8a6 | ||
|
|
581456b450 | ||
|
|
554cb34d74 | ||
|
|
ea46ed4095 | ||
|
|
9f77ac6c78 | ||
|
|
2c913a676a | ||
|
|
2e0a741575 | ||
|
|
16c60f1530 | ||
|
|
69a3b365e5 | ||
|
|
4e201c0dab | ||
|
|
6550e012c3 | ||
|
|
113a00d2d2 | ||
|
|
17b01980f4 | ||
|
|
8993da2632 | ||
|
|
04e2872669 | ||
|
|
48239ef9fa | ||
|
|
c8e2bfd7ba | ||
|
|
86bb1f6a7c | ||
|
|
f10b5baee9 | ||
|
|
37ebc38b19 | ||
|
|
6f3f87b24c | ||
|
|
3794140e71 | ||
|
|
527c6410df | ||
|
|
dc34c8dff0 | ||
|
|
893814724f | ||
|
|
2097a4b8c0 | ||
|
|
b5a1e74693 | ||
|
|
0d92844449 | ||
|
|
dc3bf6f7ed | ||
|
|
382593d553 | ||
|
|
0cc222fc0c | ||
|
|
ad6be7c914 | ||
|
|
8dde61eb89 | ||
|
|
25f9f99ed9 | ||
|
|
5cb1d88238 | ||
|
|
fbeb120d0f | ||
|
|
8b55ed5826 | ||
|
|
ac2d639bd8 | ||
|
|
47661ec3ea | ||
|
|
443fb67465 | ||
|
|
dedc25dc51 | ||
|
|
2dfab2941b | ||
|
|
6ec853a3d5 | ||
|
|
84ad270e45 | ||
|
|
0c2905b658 | ||
|
|
5189f0cd51 | ||
|
|
ab5449f835 | ||
|
|
6747613a34 | ||
|
|
182f24bb4c | ||
|
|
671edeb1d1 | ||
|
|
a5a1ea504a | ||
|
|
dd02dc82a5 | ||
|
|
1354243f09 | ||
|
|
b3d0b99383 | ||
|
|
e02a16c680 | ||
|
|
9fddad59b5 | ||
|
|
cc9dbc9590 | ||
|
|
48ee5774b7 | ||
|
|
134905c028 | ||
|
|
dfe6bd5ff0 | ||
|
|
559101a308 | ||
|
|
1ba0f1b7a3 | ||
|
|
fce23622e9 | ||
|
|
405b9bd7bc | ||
|
|
8da2a51282 | ||
|
|
4d2d66a7d1 | ||
|
|
581b125ea6 | ||
|
|
2b5d3de48e | ||
|
|
620c72de23 | ||
|
|
203b7cb3fc | ||
|
|
13a9b9beaf | ||
|
|
f8d02440c1 | ||
|
|
a77df43dff | ||
|
|
e8ed7aa236 | ||
|
|
ae1d14dbc5 | ||
|
|
9e26e24820 | ||
|
|
53ef726114 | ||
|
|
161c967679 | ||
|
|
2a83c57425 | ||
|
|
addb52fd8c | ||
|
|
27b482f75d | ||
|
|
24dc09ce94 | ||
|
|
8452addc1f | ||
|
|
a145979c7f | ||
|
|
06c9ba5ac9 | ||
|
|
d30a9efcd6 | ||
|
|
78ae2d174d | ||
|
|
345ef54850 | ||
|
|
921952c042 | ||
|
|
d9a4d29392 | ||
|
|
6d860e4f76 | ||
|
|
68d95af47d | ||
|
|
52b3281ad8 | ||
|
|
4e8ce65e02 | ||
|
|
998e7f07d2 | ||
|
|
463a695326 | ||
|
|
66452b40ff | ||
|
|
27dbeec29d | ||
|
|
4ed373636d | ||
|
|
020e3d6cb6 | ||
|
|
d0cae68636 | ||
|
|
c16d15ee19 | ||
|
|
42affc7d73 | ||
|
|
166dc3a17c | ||
|
|
b7bd7132bd | ||
|
|
3f3811bd3e | ||
|
|
efa9b096ce | ||
|
|
cff1e5a070 | ||
|
|
5e160b1bfe | ||
|
|
3538f55fc3 | ||
|
|
d106673e78 | ||
|
|
9777f70294 | ||
|
|
01ec0cb0c2 | ||
|
|
b7c5e0b953 | ||
|
|
c6f78ed87c | ||
|
|
4492f17809 | ||
|
|
f520018ce3 | ||
|
|
faa5947963 |
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
|
||||
|
||||
6
.github/workflows/nextcloud-update.yml
vendored
6
.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,7 +63,9 @@ 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
|
||||
|
||||
@@ -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:
|
||||
|
||||
12
.github/workflows/talk.yml
vendored
12
.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
|
||||
@@ -34,6 +34,16 @@ jobs:
|
||||
)"
|
||||
curl -L "https://raw.githubusercontent.com/strukturag/nextcloud-spreed-signaling/$signaling_version/server.conf.in" -o Containers/talk/server.conf.in
|
||||
|
||||
# Janus
|
||||
janus_version="$(
|
||||
git ls-remote https://github.com/meetecho/janus-gateway v0.*.* \
|
||||
| cut -d/ -f3 \
|
||||
| sort -V \
|
||||
| grep -E "^v[0-9]+\.[0-9]+\.[0-9]+$" \
|
||||
| tail -1
|
||||
)"
|
||||
sed -i "s|^ARG JANUS_VERSION=.*$|ARG JANUS_VERSION=$janus_version|" ./Containers/talk/Dockerfile
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v5
|
||||
with:
|
||||
|
||||
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
|
||||
|
||||
@@ -22,6 +22,7 @@ RUN set -ex; \
|
||||
\
|
||||
mkdir -p /mnt/data; \
|
||||
chown -R www-data:www-data /mnt/data; \
|
||||
chown -R 777 /tmp; \
|
||||
\
|
||||
apk add --no-cache \
|
||||
bash \
|
||||
@@ -29,6 +30,7 @@ RUN set -ex; \
|
||||
tzdata \
|
||||
ca-certificates \
|
||||
openssl \
|
||||
bind-tools \
|
||||
netcat-openbsd; \
|
||||
\
|
||||
sed -i \
|
||||
@@ -47,6 +49,7 @@ RUN set -ex; \
|
||||
-e 's/^#\(LoadModule .*mod_brotli.so\)/\1/' \
|
||||
-e 's/\(LoadModule .*mod_mpm_worker.so\)/#\1/' \
|
||||
-e 's/\(LoadModule .*mod_mpm_prefork.so\)/#\1/' \
|
||||
-e 's/\(ScriptAlias \)/#\1/' \
|
||||
/usr/local/apache2/conf/httpd.conf; \
|
||||
echo "Include conf/nextcloud.conf" | tee -a /usr/local/apache2/conf/httpd.conf; \
|
||||
echo "ServerName localhost" | tee -a /usr/local/apache2/conf/httpd.conf; \
|
||||
@@ -59,9 +62,15 @@ RUN set -ex; \
|
||||
mkdir /var/run/supervisord; \
|
||||
chown www-data:www-data /var/run/supervisord; \
|
||||
chown www-data:www-data /var/log/supervisord; \
|
||||
chmod 777 /var/run/supervisord; \
|
||||
chmod 777 /var/log/supervisord; \
|
||||
\
|
||||
chown -R www-data:www-data /usr/local/apache2; \
|
||||
chmod +r -R /usr/local/apache2; \
|
||||
mkdir -p /usr/local/apache2/logs; \
|
||||
chmod 777 -R /home/www-data; \
|
||||
chmod 777 -R /usr/local/apache2/logs; \
|
||||
rm -rf /usr/local/apache2/cgi-bin/; \
|
||||
\
|
||||
echo "root:$(openssl rand -base64 12)" | chpasswd
|
||||
|
||||
@@ -71,4 +80,4 @@ ENTRYPOINT ["/start.sh"]
|
||||
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
|
||||
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -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
|
||||
@@ -35,18 +41,18 @@ if [ "$APACHE_PORT" != '443' ]; then
|
||||
else
|
||||
CADDYFILE="$(sed 's|auto_https.*|auto_https disable_redirects|' /Caddyfile)"
|
||||
fi
|
||||
echo "$CADDYFILE" > /Caddyfile
|
||||
echo "$CADDYFILE" > /tmp/Caddyfile
|
||||
|
||||
# Change the trusted_proxies in case of reverse proxies
|
||||
if [ "$APACHE_PORT" != '443' ]; then
|
||||
CADDYFILE="$(sed 's|# trusted_proxies placeholder|trusted_proxies static private_ranges|' /Caddyfile)"
|
||||
CADDYFILE="$(sed 's|# trusted_proxies placeholder|trusted_proxies static private_ranges|' /tmp/Caddyfile)"
|
||||
else
|
||||
CADDYFILE="$(sed 's|trusted_proxies.*private_ranges|# trusted_proxies placeholder|' /Caddyfile)"
|
||||
CADDYFILE="$(sed "s|# trusted_proxies placeholder|trusted_proxies static $IPv4_ADDRESS|" /tmp/Caddyfile)"
|
||||
fi
|
||||
echo "$CADDYFILE" > /Caddyfile
|
||||
echo "$CADDYFILE" > /tmp/Caddyfile
|
||||
|
||||
# Fix the Caddyfile format
|
||||
caddy fmt --overwrite /Caddyfile
|
||||
caddy fmt --overwrite /tmp/Caddyfile
|
||||
|
||||
# Add caddy path
|
||||
mkdir -p /mnt/data/caddy/
|
||||
@@ -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
|
||||
|
||||
@@ -20,4 +20,4 @@ stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes=0
|
||||
stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
command=/usr/bin/caddy run --config /Caddyfile
|
||||
command=/usr/bin/caddy run --config /tmp/Caddyfile
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM alpine:3.18.2
|
||||
FROM alpine:3.18.3
|
||||
|
||||
RUN set -ex; \
|
||||
\
|
||||
@@ -18,5 +18,5 @@ COPY --chmod=770 *.sh /
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
USER root
|
||||
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
ENV BORG_RETENTION_POLICY="--keep-within=7d --keep-weekly=4 --keep-monthly=6"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -15,4 +15,4 @@ VOLUME /var/lib/clamav
|
||||
|
||||
USER clamav
|
||||
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From a file located probably somewhere here: https://github.com/CollaboraOnline/online/tree/master/docker
|
||||
FROM collabora/code:23.05.0.5.1
|
||||
FROM collabora/code:23.05.3.1.1
|
||||
|
||||
USER root
|
||||
|
||||
@@ -11,9 +11,9 @@ RUN set -ex; \
|
||||
tzdata \
|
||||
netcat-openbsd \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
rm -rf /var/lib/apt/lists/*;
|
||||
|
||||
USER 100
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost 9980 || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
18
Containers/docker-socket-proxy/Dockerfile
Normal file
18
Containers/docker-socket-proxy/Dockerfile
Normal file
@@ -0,0 +1,18 @@
|
||||
FROM haproxy:2.8.2-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,12 +1,13 @@
|
||||
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; \
|
||||
rm -rf /etc/lighttpd/lighttpd.conf; \
|
||||
chmod +r -R /etc/lighttpd; \
|
||||
chmod 777 -R /etc/lighttpd; \
|
||||
mkdir -p /var/www/domaincheck; \
|
||||
chown www-data:www-data -R /var/www
|
||||
COPY --chown=www-data:www-data lighttpd.conf /etc/lighttpd/lighttpd.conf
|
||||
chown www-data:www-data -R /var/www; \
|
||||
chmod 777 -R /var/www/domaincheck
|
||||
COPY --chown=www-data:www-data lighttpd.conf /lighttpd.conf
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
|
||||
@@ -14,4 +15,4 @@ USER www-data
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost $APACHE_PORT || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -11,7 +11,7 @@ if [ -z "$APACHE_PORT" ]; then
|
||||
export APACHE_PORT="443"
|
||||
fi
|
||||
|
||||
CONF_FILE="$(sed "s|ipv6-placeholder|\[::\]:$APACHE_PORT|" /etc/lighttpd/lighttpd.conf)"
|
||||
CONF_FILE="$(sed "s|ipv6-placeholder|\[::\]:$APACHE_PORT|" /lighttpd.conf)"
|
||||
echo "$CONF_FILE" > /etc/lighttpd/lighttpd.conf
|
||||
|
||||
# Check config file
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Probably from here https://github.com/elastic/elasticsearch/blob/main/distribution/docker/src/docker/Dockerfile
|
||||
FROM elasticsearch:7.17.10
|
||||
FROM elasticsearch:8.9.1
|
||||
|
||||
USER root
|
||||
|
||||
@@ -16,4 +16,4 @@ RUN set -ex; \
|
||||
USER 1000:0
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost 9200 || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM golang:1.20.5-alpine3.18 as go
|
||||
FROM golang:1.21.0-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 \
|
||||
@@ -35,4 +35,4 @@ ENV MALLOC_ARENA_MAX=2
|
||||
ENTRYPOINT ["imaginary", "-return-size", "-max-allowed-resolution", "222.2"]
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost "$PORT" || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -10,18 +10,21 @@
|
||||
log {
|
||||
level ERROR
|
||||
}
|
||||
|
||||
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.2-cli as docker
|
||||
FROM docker:24.0.5-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.7-fpm-alpine3.18
|
||||
FROM php:8.2.10-fpm-alpine3.18
|
||||
|
||||
EXPOSE 80
|
||||
EXPOSE 8080
|
||||
@@ -93,6 +93,7 @@ RUN set -ex; \
|
||||
-e 's/^#\(LoadModule .*mod_mpm_event.so\)/\1/' \
|
||||
-e 's/\(LoadModule .*mod_mpm_worker.so\)/#\1/' \
|
||||
-e 's/\(LoadModule .*mod_mpm_prefork.so\)/#\1/' \
|
||||
-e 's/\(ScriptAlias \)/#\1/' \
|
||||
/etc/apache2/httpd.conf; \
|
||||
mkdir -p /etc/apache2/logs; \
|
||||
rm /etc/apache2/conf.d/ssl.conf; \
|
||||
@@ -108,6 +109,7 @@ RUN set -ex; \
|
||||
/etc/apache2/conf.d/userdir.conf \
|
||||
/etc/apache2/conf.d/info.conf; \
|
||||
\
|
||||
rm -rf /var/www/localhost/cgi-bin/; \
|
||||
mkdir /var/log/supervisord; \
|
||||
mkdir /var/run/supervisord;
|
||||
|
||||
@@ -119,6 +121,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
|
||||
|
||||
@@ -57,6 +57,9 @@ while true; do
|
||||
# Remove dangling images
|
||||
sudo -u www-data docker image prune --force
|
||||
|
||||
# Check for available free space
|
||||
sudo -u www-data php /var/www/docker-aio/php/src/Cron/CheckFreeDiskSpace.php
|
||||
|
||||
# Remove mastercontainer from default bridge network
|
||||
if sudo -u www-data docker inspect nextcloud-aio-mastercontainer --format "{{.NetworkSettings.Networks}}" | grep -q "bridge"; then
|
||||
sudo -u www-data docker network disconnect bridge nextcloud-aio-mastercontainer
|
||||
|
||||
@@ -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."
|
||||
@@ -64,7 +70,6 @@ fi
|
||||
# Check if api version is supported
|
||||
if ! sudo -u www-data docker info &>/dev/null; then
|
||||
print_red "Cannot connect to the docker socket. Cannot proceed."
|
||||
echo "If you are on Docker Desktop v4.19 or higher, see https://github.com/nextcloud/all-in-one/issues/2450"
|
||||
echo "If SELinux is enabled on your host, see https://github.com/nextcloud/all-in-one#are-there-known-problems-when-selinux-is-enabled"
|
||||
echo "If you are on TrueNas SCALE, see https://github.com/nextcloud/all-in-one#can-i-run-aio-on-truenas-scale"
|
||||
exit 1
|
||||
@@ -248,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/
|
||||
@@ -299,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
|
||||
@@ -311,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.20-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.2
|
||||
ENV NEXTCLOUD_VERSION 27.0.2
|
||||
ENV AIO_TOKEN 123456
|
||||
ENV AIO_URL localhost
|
||||
|
||||
@@ -209,6 +209,7 @@ RUN set -ex; \
|
||||
chown www-data:root -R /usr/src && \
|
||||
chown www-data:root -R /usr/local/etc/php/conf.d && \
|
||||
chown www-data:root -R /usr/local/etc/php-fpm.d && \
|
||||
chmod -R 777 /tmp; \
|
||||
rm -r /usr/src/nextcloud/apps/updatenotification; \
|
||||
\
|
||||
mkdir -p /nc-updater; \
|
||||
@@ -222,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
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
HEALTHCHECK --start-period=60s CMD sudo -E -u www-data bash /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
5
Containers/nextcloud/config/aio.config.php
Normal file
5
Containers/nextcloud/config/aio.config.php
Normal file
@@ -0,0 +1,5 @@
|
||||
<?php
|
||||
$CONFIG = array (
|
||||
'one-click-instance' => true,
|
||||
'one-click-instance.user-limit' => 100,
|
||||
);
|
||||
@@ -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
|
||||
@@ -444,12 +446,14 @@ if [ -z "$OBJECTSTORE_S3_BUCKET" ] && [ -z "$OBJECTSTORE_SWIFT_URL" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Configure tempdirectory
|
||||
mkdir -p "$NEXTCLOUD_DATA_DIR/tmp/"
|
||||
if ! grep -q upload_tmp_dir /usr/local/etc/php/conf.d/nextcloud.ini; then
|
||||
echo "upload_tmp_dir = $NEXTCLOUD_DATA_DIR/tmp/" >> /usr/local/etc/php/conf.d/nextcloud.ini
|
||||
# Delete formerly configured tempdirectory as the default is usually faster (if the datadir is on a HDD or network FS)
|
||||
if [ "$(php /var/www/html/occ config:system:get tempdirectory)" = "$NEXTCLOUD_DATA_DIR/tmp/" ]; then
|
||||
php /var/www/html/occ config:system:delete tempdirectory
|
||||
if [ -d "$NEXTCLOUD_DATA_DIR/tmp/" ]; then
|
||||
rm -r "$NEXTCLOUD_DATA_DIR/tmp/"
|
||||
fi
|
||||
fi
|
||||
php /var/www/html/occ config:system:set tempdirectory --value="$NEXTCLOUD_DATA_DIR/tmp/"
|
||||
|
||||
fi
|
||||
|
||||
# Perform fingerprint update if instance was restored
|
||||
@@ -474,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
|
||||
@@ -648,7 +656,7 @@ if [ "$CLAMAV_ENABLED" = 'yes' ]; then
|
||||
php /var/www/html/occ config:app:set files_antivirus av_port --value="3310"
|
||||
php /var/www/html/occ config:app:set files_antivirus av_host --value="$CLAMAV_HOST"
|
||||
php /var/www/html/occ config:app:set files_antivirus av_stream_max_length --value="104857600"
|
||||
php /var/www/html/occ config:app:set files_antivirus av_max_file_size --value="-1"
|
||||
php /var/www/html/occ config:app:set files_antivirus av_max_file_size --value="104857600"
|
||||
php /var/www/html/occ config:app:set files_antivirus av_infected_action --value="only_log"
|
||||
fi
|
||||
else
|
||||
@@ -699,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
|
||||
@@ -726,5 +734,22 @@ else
|
||||
fi
|
||||
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_ecosystem_v2" ]; then
|
||||
php /var/www/html/occ app:install app_ecosystem_v2
|
||||
elif [ "$(php /var/www/html/occ config:app:get app_ecosystem_v2 enabled)" != "yes" ]; then
|
||||
php /var/www/html/occ app:enable app_ecosystem_v2
|
||||
elif [ "$SKIP_UPDATE" != 1 ]; then
|
||||
php /var/www/html/occ app:update app_ecosystem_v2
|
||||
fi
|
||||
else
|
||||
if [ -d "/var/www/html/custom_apps/app_ecosystem_v2" ]; then
|
||||
php /var/www/html/occ app:remove app_ecosystem_v2
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Remove the update skip file always
|
||||
rm -f "$NEXTCLOUD_DATA_DIR"/skip.update
|
||||
|
||||
@@ -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
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
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
|
||||
@@ -27,12 +27,14 @@ elif [ "$CPU_ARCH" != "x86_64" ]; then
|
||||
export CPU_ARCH="aarch64"
|
||||
fi
|
||||
|
||||
# Set sensitive values as env
|
||||
export DATABASE_URL="postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST/$POSTGRES_DB"
|
||||
export REDIS_URL="redis://:$REDIS_HOST_PASSWORD@$REDIS_HOST"
|
||||
|
||||
# Run it
|
||||
/nextcloud/custom_apps/notify_push/bin/"$CPU_ARCH"/notify_push \
|
||||
--database-prefix="oc_" \
|
||||
--nextcloud-url "https://$NC_DOMAIN" \
|
||||
--port 7867 \
|
||||
--redis-url "redis://:$REDIS_HOST_PASSWORD@$REDIS_HOST" \
|
||||
--database-url "postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST/$POSTGRES_DB"
|
||||
--port 7867
|
||||
|
||||
exec "$@"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# 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
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost 80 || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -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
|
||||
@@ -22,6 +22,7 @@ RUN set -ex; \
|
||||
# Fix default permissions
|
||||
chown -R postgres:postgres /var/lib/postgresql; \
|
||||
chown -R postgres:postgres /var/run/postgresql; \
|
||||
chmod -R 777 /var/run/postgresql; \
|
||||
chown -R postgres:postgres "$PGDATA"; \
|
||||
\
|
||||
mkdir /mnt/data; \
|
||||
@@ -37,4 +38,4 @@ USER postgres
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
|
||||
HEALTHCHECK CMD /healthcheck.sh
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -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.11-alpine
|
||||
FROM redis:7.0.12-alpine
|
||||
|
||||
COPY --chmod=775 start.sh /start.sh
|
||||
|
||||
@@ -13,4 +13,4 @@ USER redis
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
|
||||
HEALTHCHECK CMD redis-cli -a $REDIS_HOST_PASSWORD PING || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
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.0
|
||||
ENV RECORDING_VERSION v17.0.3
|
||||
ENV ALLOW_ALL false
|
||||
ENV HPB_PROTOCOL https
|
||||
ENV SKIP_VERIFY false
|
||||
ENV HPB_PATH /standalone-signaling/
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
@@ -31,6 +35,9 @@ RUN set -ex; \
|
||||
touch /etc/recording.conf; \
|
||||
chown recording:recording -R \
|
||||
/tmp /etc/recording.conf; \
|
||||
mkdir -p /conf; \
|
||||
chmod 777 /conf; \
|
||||
chmod 777 /tmp; \
|
||||
apk del --no-cache \
|
||||
git \
|
||||
wget \
|
||||
@@ -40,7 +47,7 @@ RUN set -ex; \
|
||||
WORKDIR /tmp
|
||||
USER recording
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/etc/recording.conf"]
|
||||
CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/conf/recording.conf"]
|
||||
|
||||
HEALTHCHECK CMD nc -z localhost 1234 || exit 1
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -12,34 +12,39 @@ elif [ -z "$INTERNAL_SECRET" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cat << RECORDING_CONF > "/etc/recording.conf"
|
||||
if [ -z "$HPB_DOMAIN" ]; then
|
||||
export HPB_DOMAIN="$NC_DOMAIN"
|
||||
fi
|
||||
|
||||
cat << RECORDING_CONF > "/conf/recording.conf"
|
||||
[logs]
|
||||
# 30 means Warning
|
||||
level = 30
|
||||
|
||||
[http]
|
||||
listen = 0.0.0.0:1234
|
||||
|
||||
[backend]
|
||||
allowall = false
|
||||
allowall = ${ALLOW_ALL}
|
||||
# TODO: remove secret below when https://github.com/nextcloud/spreed/issues/9580 is fixed
|
||||
secret = ${RECORDING_SECRET}
|
||||
backends = backend-1
|
||||
skipverify = false
|
||||
skipverify = ${SKIP_VERIFY}
|
||||
maxmessagesize = 1024
|
||||
videowidth = 1920
|
||||
videoheight = 1080
|
||||
directory = /tmp
|
||||
|
||||
[backend-1]
|
||||
url = https://${NC_DOMAIN}
|
||||
url = ${HPB_PROTOCOL}://${NC_DOMAIN}
|
||||
secret = ${RECORDING_SECRET}
|
||||
skipverify = false
|
||||
skipverify = ${SKIP_VERIFY}
|
||||
|
||||
[signaling]
|
||||
signalings = signaling-1
|
||||
|
||||
[signaling-1]
|
||||
url = https://${NC_DOMAIN}/standalone-signaling/
|
||||
url = ${HPB_PROTOCOL}://${HPB_DOMAIN}${HPB_PATH}
|
||||
internalsecret = ${INTERNAL_SECRET}
|
||||
|
||||
[ffmpeg]
|
||||
|
||||
@@ -1,74 +1,107 @@
|
||||
FROM nats:2.9.18-scratch as nats
|
||||
FROM strukturag/nextcloud-spreed-signaling:1.1.2 as signaling
|
||||
FROM coturn/coturn:4.6.2-r3-alpine
|
||||
USER root
|
||||
# Pin alpine version manually as long as https://github.com/coturn/coturn/issues/1226 is not done
|
||||
ENV ALPINE_VERSION=3.18
|
||||
FROM nats:2.9.21-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.3 as janus
|
||||
|
||||
COPY --from=nats /nats-server /usr/local/bin/nats-server
|
||||
ARG JANUS_VERSION=v0.14.0
|
||||
WORKDIR /src
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
ca-certificates \
|
||||
git \
|
||||
autoconf \
|
||||
automake \
|
||||
build-base \
|
||||
pkgconfig \
|
||||
libtool \
|
||||
util-linux \
|
||||
glib-dev \
|
||||
zlib-dev \
|
||||
openssl-dev \
|
||||
jansson-dev \
|
||||
libnice-dev \
|
||||
libconfig-dev \
|
||||
libsrtp-dev \
|
||||
libusrsctp-dev \
|
||||
gengetopt-dev \
|
||||
libwebsockets-dev; \
|
||||
git clone --recursive https://github.com/meetecho/janus-gateway --depth=1 --single-branch --branch "$JANUS_VERSION" /src; \
|
||||
/src/autogen.sh; \
|
||||
/src/configure --disable-rabbitmq --disable-mqtt --disable-boringssl; \
|
||||
make; \
|
||||
make install; \
|
||||
make configs; \
|
||||
rename -v ".jcfg.sample" ".jcfg" /usr/local/etc/janus/*.jcfg.sample
|
||||
|
||||
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; \
|
||||
grep VERSION_ID /etc/os-release | grep -q "$ALPINE_VERSION.[0-9]\+$"; \
|
||||
apk add --no-cache \
|
||||
ca-certificates \
|
||||
tzdata \
|
||||
bash \
|
||||
janus-gateway \
|
||||
openssl \
|
||||
supervisor \
|
||||
bind-tools \
|
||||
netcat-openbsd \
|
||||
shadow \
|
||||
util-linux \
|
||||
build-base \
|
||||
wget \
|
||||
lua5.3-dev \
|
||||
luarocks5.3; \
|
||||
useradd --system talk; \
|
||||
luarocks-5.3 install luajson; \
|
||||
luarocks-5.3 install ansicolors; \
|
||||
rename -v ".jcfg.sample" ".jcfg" /etc/janus/*.sample; \
|
||||
\
|
||||
glib \
|
||||
zlib \
|
||||
libssl3 \
|
||||
libcrypto3 \
|
||||
jansson \
|
||||
libnice \
|
||||
libconfig \
|
||||
libsrtp \
|
||||
libusrsctp \
|
||||
libwebsockets \
|
||||
\
|
||||
shadow; \
|
||||
useradd --system eturnal; \
|
||||
apk del --no-cache \
|
||||
shadow \
|
||||
util-linux \
|
||||
build-base \
|
||||
wget \
|
||||
lua5.3-dev \
|
||||
luarocks5.3; \
|
||||
shadow; \
|
||||
\
|
||||
# Give root a random password
|
||||
echo "root:$(openssl rand -base64 12)" | chpasswd; \
|
||||
\
|
||||
touch \
|
||||
/etc/nats.conf \
|
||||
/etc/signaling.conf \
|
||||
/etc/turnserver.conf; \
|
||||
/etc/eturnal.yml; \
|
||||
echo "listen: 127.0.0.1:4222" | tee /etc/nats.conf; \
|
||||
mkdir -p \
|
||||
/var/tmp \
|
||||
/conf \
|
||||
/var/lib/turn \
|
||||
/var/log/supervisord \
|
||||
/var/run/supervisord \
|
||||
/usr/local/lib/janus/loggers; \
|
||||
chown eturnal:eturnal -R \
|
||||
/usr \
|
||||
/opt/eturnal \
|
||||
/etc/nats.conf \
|
||||
/var/log/supervisord \
|
||||
/var/run/supervisord; \
|
||||
chown talk:talk -R \
|
||||
/usr \
|
||||
/etc/janus \
|
||||
/etc/nats.conf \
|
||||
/etc/signaling.conf \
|
||||
/etc/turnserver.conf \
|
||||
/var/lib/turn \
|
||||
/var/log/supervisord \
|
||||
/var/run/supervisord;
|
||||
chmod 777 -R \
|
||||
/tmp \
|
||||
/conf \
|
||||
/opt/eturnal \
|
||||
/var/run/supervisord \
|
||||
/var/log/supervisord; \
|
||||
ln -s /opt/eturnal/bin/stun /usr/local/bin/stun; \
|
||||
ln -s /opt/eturnal/bin/eturnalctl /usr/local/bin/eturnalctl
|
||||
|
||||
# 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
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
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
|
||||
@@ -89,7 +89,7 @@ allowall = false
|
||||
# Common shared secret for requests from and to the backend servers if
|
||||
# "allowall" is enabled. This must be the same value as configured in the
|
||||
# Nextcloud admin ui.
|
||||
#secret = the-shared-secret
|
||||
#secret = the-shared-secret-for-allowall
|
||||
|
||||
# Timeout in seconds for requests to the backend.
|
||||
timeout = 10
|
||||
|
||||
@@ -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,45 +19,39 @@ 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 > "/etc/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 > "/etc/signaling.conf"
|
||||
cat << SIGNALING_CONF > "/conf/signaling.conf"
|
||||
[http]
|
||||
listen = 0.0.0.0:8081
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
[supervisord]
|
||||
nodaemon=true
|
||||
nodaemon=true
|
||||
logfile=/var/log/supervisord/supervisord.log
|
||||
pidfile=/var/run/supervisord/supervisord.pid
|
||||
childlogdir=/var/log/supervisord/
|
||||
@@ -8,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 /etc/turnserver.conf
|
||||
command=eturnalctl foreground
|
||||
|
||||
[program:nats-server]
|
||||
stdout_logfile=/dev/stdout
|
||||
@@ -27,11 +26,12 @@ stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes=0
|
||||
stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
command=janus --config=/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3
|
||||
# debug-level 3 means warning
|
||||
command=janus --config=/usr/local/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3
|
||||
|
||||
[program:signaling]
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes=0
|
||||
stderr_logfile=/dev/stderr
|
||||
stderr_logfile_maxbytes=0
|
||||
command=nextcloud-spreed-signaling -config /etc/signaling.conf
|
||||
command=nextcloud-spreed-signaling -config /conf/signaling.conf
|
||||
|
||||
@@ -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
|
||||
@@ -11,4 +11,4 @@ COPY --chmod=775 start.sh /start.sh
|
||||
USER root
|
||||
|
||||
ENTRYPOINT ["/start.sh"]
|
||||
LABEL com.centurylinklabs.watchtower.monitor-only="true"
|
||||
LABEL com.centurylinklabs.watchtower.enable="false"
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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,13 +1,25 @@
|
||||
services:
|
||||
nextcloud-aio-apache:
|
||||
depends_on:
|
||||
- nextcloud-aio-onlyoffice
|
||||
- nextcloud-aio-collabora
|
||||
- nextcloud-aio-talk
|
||||
- nextcloud-aio-nextcloud
|
||||
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
|
||||
ports:
|
||||
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/tcp
|
||||
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/udp
|
||||
environment:
|
||||
- NC_DOMAIN=${NC_DOMAIN}
|
||||
- NEXTCLOUD_HOST=nextcloud-aio-nextcloud
|
||||
@@ -18,12 +30,20 @@ services:
|
||||
- TZ=${TIMEZONE}
|
||||
- APACHE_MAX_SIZE=${APACHE_MAX_SIZE}
|
||||
- APACHE_MAX_TIME=${NEXTCLOUD_MAX_TIME}
|
||||
- NOTIFY_PUSH_HOST=nextcloud-aio-notify-push
|
||||
volumes:
|
||||
- nextcloud_aio_nextcloud:/var/www/html:ro
|
||||
- nextcloud_aio_apache:/mnt/data:rw
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /var/log/supervisord
|
||||
- /var/run/supervisord
|
||||
- /usr/local/apache2/logs
|
||||
- /tmp
|
||||
- /home/www-data
|
||||
|
||||
nextcloud-aio-database:
|
||||
image: nextcloud/aio-postgresql:latest
|
||||
@@ -43,19 +63,33 @@ services:
|
||||
shm_size: 268435456
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /var/run/postgresql
|
||||
|
||||
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
|
||||
expose:
|
||||
- "9000"
|
||||
- "7867"
|
||||
volumes:
|
||||
- nextcloud_aio_nextcloud:/var/www/html:rw
|
||||
- ${NEXTCLOUD_DATADIR}:/mnt/ncdata:rw
|
||||
@@ -106,6 +140,28 @@ services:
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
tmpfs:
|
||||
- /tmp:exec
|
||||
|
||||
nextcloud-aio-notify-push:
|
||||
image: nextcloud/aio-notify-push:latest
|
||||
expose:
|
||||
- "7867"
|
||||
volumes:
|
||||
- nextcloud_aio_nextcloud:/nextcloud:ro
|
||||
environment:
|
||||
- NC_DOMAIN=${NC_DOMAIN}
|
||||
- NEXTCLOUD_HOST=nextcloud-aio-nextcloud
|
||||
- REDIS_HOST=nextcloud-aio-redis
|
||||
- REDIS_HOST_PASSWORD=${REDIS_PASSWORD}
|
||||
- POSTGRES_HOST=nextcloud-aio-database
|
||||
- POSTGRES_PASSWORD=${DATABASE_PASSWORD}
|
||||
- POSTGRES_DB=nextcloud_database
|
||||
- POSTGRES_USER=nextcloud
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
|
||||
nextcloud-aio-redis:
|
||||
image: nextcloud/aio-redis:latest
|
||||
@@ -158,6 +214,13 @@ services:
|
||||
- talk-recording
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /var/log/supervisord
|
||||
- /var/run/supervisord
|
||||
- /conf
|
||||
- /var/lib/turn
|
||||
- /tmp
|
||||
|
||||
nextcloud-aio-talk-recording:
|
||||
image: nextcloud/aio-talk-recording:latest
|
||||
@@ -174,6 +237,10 @@ services:
|
||||
- talk-recording
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /tmp
|
||||
- /conf
|
||||
|
||||
nextcloud-aio-clamav:
|
||||
image: nextcloud/aio-clamav:latest
|
||||
@@ -189,6 +256,11 @@ services:
|
||||
- clamav
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /var/lock
|
||||
- /var/log/clamav
|
||||
- /tmp
|
||||
|
||||
nextcloud-aio-onlyoffice:
|
||||
image: nextcloud/aio-onlyoffice:latest
|
||||
@@ -220,6 +292,9 @@ services:
|
||||
- imaginary
|
||||
networks:
|
||||
- nextcloud-aio
|
||||
read_only: true
|
||||
tmpfs:
|
||||
- /tmp
|
||||
|
||||
nextcloud-aio-fulltextsearch:
|
||||
image: nextcloud/aio-fulltextsearch:latest
|
||||
@@ -227,9 +302,14 @@ services:
|
||||
- "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
|
||||
volumes:
|
||||
- nextcloud_aio_elasticsearch:/usr/share/elasticsearch/data:rw
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -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"
|
||||
@@ -111,7 +112,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
|
||||
```
|
||||
|
||||
@@ -14,7 +14,7 @@ The procedure for migrating only the files works like this:
|
||||
1. Install Nextcloud AIO on a new server/linux installation, enter your domain and wait until all containers are running
|
||||
1. Recreate all users that were present on your former installation
|
||||
1. Take a backup using Nextcloud AIO's built-in backup solution (so that you can easily restore to this state again) (Note: this will stop all containers and is expected: don't start the container again at this point!)
|
||||
1. Restore the datadirectory of your former instance: for `/path/to/nextcloud/data/` run `sudo docker cp --follow-link /path/to/nextcloud/data/ nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/` at the end are necessary.
|
||||
1. Restore the datadirectory of your former instance: for `/path/to/nextcloud/data/` run `sudo docker cp --follow-link /path/to/nextcloud/data/. nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/.` and `/` at the end are necessary.
|
||||
1. Next, run `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chown -R 33:0 /mnt/ncdata/` and `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chmod -R 750 /mnt/ncdata/` to apply the correct permissions. (Or if `NEXTCLOUD_DATADIR` was provided, apply `chown -R 33:0` and `chmod -R 750` to the chosen path.)
|
||||
1. Start the containers again and wait until all containers are running
|
||||
1. Run `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan-app-data && sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan --all` in order to scan all files in the datadirectory.
|
||||
@@ -24,7 +24,7 @@ The procedure for migrating only the files works like this:
|
||||
|
||||
The procedure for migrating the files and the database works like this:
|
||||
1. Make sure that your old instance is on exactly the same version like the version used in Nextcloud AIO. (e.g. 23.0.0) You can find the used version here: [click here](https://github.com/nextcloud/all-in-one/search?l=Dockerfile&q=NEXTCLOUD_VERSION&type=). If not, simply upgrade your former installation to that version or wait until the version used in Nextcloud AIO got updated to the same version of your former installation or the other way around.
|
||||
1. Take a backup of your former instance (especially from your datadirectory and database)
|
||||
1. First, on the old instance, update all Nextcloud apps to its latest version via the app management site (important for the restore later on). Then take a backup of your former instance (especially from your datadirectory and database).
|
||||
1. If your former installation didn't use Postgresql already, you will now need to convert your old installation to use Postgresql as database temporarily (in order to be able to perform a pg_dump afterwards):
|
||||
1. Install Postgresql on your former installation: on a Debian based OS should the following command work:
|
||||
```
|
||||
@@ -56,7 +56,7 @@ The procedure for migrating the files and the database works like this:
|
||||
```
|
||||
**Please note:** The exact name of the database export file is important! (`database-dump.sql`)<br>
|
||||
And of course you need to to use the correct name that the Postgresql database has for the export (if `$PG_DATABASE` doesn't work directly).
|
||||
1. At this point, you can finally install Nextcloud AIO on a new server/linux installation, enter your domain in the AIO interface (use the same domain that you used on your former installation) and wait until all containers are running. Then you should check the included Nextcloud version by running `sudo docker inspect nextcloud-aio-nextcloud | grep NEXTCLOUD_VERSION`.
|
||||
1. At this point, you can finally install Nextcloud AIO on a new server/linux installation, enter your domain in the AIO interface (use the same domain that you used on your former installation) and wait until all containers are running. Then you should check the included Nextcloud version by running `sudo docker inspect nextcloud-aio-nextcloud | grep NEXTCLOUD_VERSION`. Also install all apps via the apps management site that were installed on the old Nextcloud installation. Otherwise they will show as installed, but will not work.
|
||||
1. Next, take a backup using Nextcloud AIO's built-in backup solution (so that you can easily restore to this state again) (Note: this will stop all containers and is expected: don't start the container again at this point!)
|
||||
1. Now, we are slowly starting to import your files and database. First, you need to modify the datadirectory that is stored inside the database export:
|
||||
1. Find out what the directory of your old Nextcloud installation is by e.g. opening the config.php file and looking at the value `datadirectory`.
|
||||
@@ -75,7 +75,7 @@ The procedure for migrating the files and the database works like this:
|
||||
sudo docker run --rm --volume nextcloud_aio_database_dump:/mnt/data:rw alpine chmod 777 /mnt/data/database-dump.sql
|
||||
sudo docker run --rm --volume nextcloud_aio_database_dump:/mnt/data:rw alpine rm /mnt/data/initial-cleanup-done
|
||||
```
|
||||
1. If the commands above were executed successfully, restore the datadirectory of your former instance into your datadirectory: `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine sh -c "rm -rf /mnt/ncdata/*"` and `sudo docker cp --follow-link /path/to/nextcloud/data/ nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/` at the end are necessary. (Or if `NEXTCLOUD_DATADIR` was provided, first delete the files in there and then copy the files to the chosen path.)
|
||||
1. If the commands above were executed successfully, restore the datadirectory of your former instance into your datadirectory: `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine sh -c "rm -rf /mnt/ncdata/*"` and `sudo docker cp --follow-link /path/to/nextcloud/data/. nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/.` and `/` at the end are necessary. (Or if `NEXTCLOUD_DATADIR` was provided, first delete the files in there and then copy the files to the chosen path.)
|
||||
1. Next, run `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chown -R 33:0 /mnt/ncdata/` and `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chmod -R 750 /mnt/ncdata/` to apply the correct permissions on the datadirectory. (Or if `NEXTCLOUD_DATADIR` was provided, apply `chown -R 33:0` and `chmod -R 750` to the chosen path.)
|
||||
1. Edit the Nextcloud AIO config.php file using `sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"` and modify only `passwordsalt`, `secret`, `instanceid` and set it to the old values that you used on your old installation. If you are brave, feel free to modify further values e.g. add your old LDAP config or S3 storage config. (Some things like Mail server config can be added back using Nextcloud's webinterface later on).
|
||||
1. When you are done and saved your changes to the file, finally start the containers again and wait until all containers are running.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
name: nextcloud-aio-helm-chart
|
||||
description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose
|
||||
version: 6.1.1
|
||||
version: 7.0.0
|
||||
apiVersion: v2
|
||||
keywords:
|
||||
- latest
|
||||
|
||||
@@ -2,11 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -15,8 +16,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
@@ -29,7 +30,22 @@ spec:
|
||||
- "777"
|
||||
- /nextcloud-aio-nextcloud
|
||||
- /nextcloud-aio-apache
|
||||
- /nextcloud-aio-apache-tmpfs0
|
||||
- /nextcloud-aio-apache-tmpfs1
|
||||
- /nextcloud-aio-apache-tmpfs2
|
||||
- /nextcloud-aio-apache-tmpfs3
|
||||
- /nextcloud-aio-apache-tmpfs4
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-apache-tmpfs4
|
||||
mountPath: /nextcloud-aio-apache-tmpfs4
|
||||
- name: nextcloud-aio-apache-tmpfs3
|
||||
mountPath: /nextcloud-aio-apache-tmpfs3
|
||||
- name: nextcloud-aio-apache-tmpfs2
|
||||
mountPath: /nextcloud-aio-apache-tmpfs2
|
||||
- name: nextcloud-aio-apache-tmpfs1
|
||||
mountPath: /nextcloud-aio-apache-tmpfs1
|
||||
- name: nextcloud-aio-apache-tmpfs0
|
||||
mountPath: /nextcloud-aio-apache-tmpfs0
|
||||
- name: nextcloud-aio-apache
|
||||
mountPath: /nextcloud-aio-apache
|
||||
- name: nextcloud-aio-nextcloud
|
||||
@@ -48,22 +64,41 @@ spec:
|
||||
value: "{{ .Values.NC_DOMAIN }}"
|
||||
- name: NEXTCLOUD_HOST
|
||||
value: nextcloud-aio-nextcloud
|
||||
- name: NOTIFY_PUSH_HOST
|
||||
value: nextcloud-aio-notify-push
|
||||
- name: ONLYOFFICE_HOST
|
||||
value: nextcloud-aio-onlyoffice
|
||||
- name: TALK_HOST
|
||||
value: nextcloud-aio-talk
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-apache:20230613_120442-latest
|
||||
image: nextcloud/aio-apache:20230817_065941-latest
|
||||
name: nextcloud-aio-apache
|
||||
ports:
|
||||
- containerPort: {{ .Values.APACHE_PORT }}
|
||||
hostPort: {{ .Values.APACHE_PORT }}
|
||||
protocol: TCP
|
||||
- containerPort: {{ .Values.APACHE_PORT }}
|
||||
hostPort: {{ .Values.APACHE_PORT }}
|
||||
protocol: UDP
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: nextcloud-aio-nextcloud
|
||||
readOnly: true
|
||||
- mountPath: /mnt/data
|
||||
name: nextcloud-aio-apache
|
||||
- mountPath: /var/log/supervisord
|
||||
name: nextcloud-aio-apache-tmpfs0
|
||||
- mountPath: /var/run/supervisord
|
||||
name: nextcloud-aio-apache-tmpfs1
|
||||
- mountPath: /usr/local/apache2/logs
|
||||
name: nextcloud-aio-apache-tmpfs2
|
||||
- mountPath: /tmp
|
||||
name: nextcloud-aio-apache-tmpfs3
|
||||
- mountPath: /home/www-data
|
||||
name: nextcloud-aio-apache-tmpfs4
|
||||
volumes:
|
||||
- name: nextcloud-aio-nextcloud
|
||||
persistentVolumeClaim:
|
||||
@@ -71,3 +106,13 @@ spec:
|
||||
- name: nextcloud-aio-apache
|
||||
persistentVolumeClaim:
|
||||
claimName: nextcloud-aio-apache
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-apache-tmpfs0
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-apache-tmpfs1
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-apache-tmpfs2
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-apache-tmpfs3
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-apache-tmpfs4
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
name: nextcloud-aio-apache
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,16 +2,21 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
ports:
|
||||
- name: "{{ .Values.APACHE_PORT }}"
|
||||
port: {{ .Values.APACHE_PORT }}
|
||||
targetPort: {{ .Values.APACHE_PORT }}
|
||||
- name: {{ .Values.APACHE_PORT }}-udp
|
||||
port: {{ .Values.APACHE_PORT }}
|
||||
protocol: UDP
|
||||
targetPort: {{ .Values.APACHE_PORT }}
|
||||
selector:
|
||||
io.kompose.service: nextcloud-aio-apache
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,8 +17,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-clamav
|
||||
@@ -29,7 +30,16 @@ spec:
|
||||
- chmod
|
||||
- "777"
|
||||
- /nextcloud-aio-clamav
|
||||
- /nextcloud-aio-clamav-tmpfs0
|
||||
- /nextcloud-aio-clamav-tmpfs1
|
||||
- /nextcloud-aio-clamav-tmpfs2
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-clamav-tmpfs2
|
||||
mountPath: /nextcloud-aio-clamav-tmpfs2
|
||||
- name: nextcloud-aio-clamav-tmpfs1
|
||||
mountPath: /nextcloud-aio-clamav-tmpfs1
|
||||
- name: nextcloud-aio-clamav-tmpfs0
|
||||
mountPath: /nextcloud-aio-clamav-tmpfs0
|
||||
- name: nextcloud-aio-clamav
|
||||
mountPath: /nextcloud-aio-clamav
|
||||
containers:
|
||||
@@ -38,15 +48,31 @@ spec:
|
||||
value: "90"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-clamav:20230613_120442-latest
|
||||
image: nextcloud/aio-clamav:20230817_065941-latest
|
||||
name: nextcloud-aio-clamav
|
||||
ports:
|
||||
- containerPort: 3310
|
||||
hostPort: 3310
|
||||
protocol: TCP
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /var/lib/clamav
|
||||
name: nextcloud-aio-clamav
|
||||
- mountPath: /var/lock
|
||||
name: nextcloud-aio-clamav-tmpfs0
|
||||
- mountPath: /var/log/clamav
|
||||
name: nextcloud-aio-clamav-tmpfs1
|
||||
- mountPath: /tmp
|
||||
name: nextcloud-aio-clamav-tmpfs2
|
||||
volumes:
|
||||
- name: nextcloud-aio-clamav
|
||||
persistentVolumeClaim:
|
||||
claimName: nextcloud-aio-clamav
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-clamav-tmpfs0
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-clamav-tmpfs1
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-clamav-tmpfs2
|
||||
{{- end }}
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-clamav
|
||||
name: nextcloud-aio-clamav
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "3310"
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,8 +17,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-collabora
|
||||
@@ -36,8 +37,10 @@ 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:20230613_120442-latest
|
||||
image: nextcloud/aio-collabora:20230817_065941-latest
|
||||
name: nextcloud-aio-collabora
|
||||
ports:
|
||||
- containerPort: 9980
|
||||
hostPort: 9980
|
||||
protocol: TCP
|
||||
{{- end }}
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9980"
|
||||
|
||||
@@ -2,11 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -15,8 +16,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-database
|
||||
@@ -30,7 +31,10 @@ spec:
|
||||
- /nextcloud-aio-database/data
|
||||
- /nextcloud-aio-database
|
||||
- /nextcloud-aio-database-dump
|
||||
- /nextcloud-aio-database-tmpfs0
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-database-tmpfs0
|
||||
mountPath: /nextcloud-aio-database-tmpfs0
|
||||
- name: nextcloud-aio-database-dump
|
||||
mountPath: /nextcloud-aio-database-dump
|
||||
- name: nextcloud-aio-database
|
||||
@@ -43,7 +47,10 @@ spec:
|
||||
- "-R"
|
||||
- /nextcloud-aio-database
|
||||
- /nextcloud-aio-database-dump
|
||||
- /nextcloud-aio-database-tmpfs0
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-database-tmpfs0
|
||||
mountPath: /nextcloud-aio-database-tmpfs0
|
||||
- name: nextcloud-aio-database-dump
|
||||
mountPath: /nextcloud-aio-database-dump
|
||||
- name: nextcloud-aio-database
|
||||
@@ -60,16 +67,22 @@ spec:
|
||||
value: nextcloud
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-postgresql:20230613_120442-latest
|
||||
image: nextcloud/aio-postgresql:20230817_065941-latest
|
||||
name: nextcloud-aio-database
|
||||
ports:
|
||||
- containerPort: 5432
|
||||
hostPort: 5432
|
||||
protocol: TCP
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /var/lib/postgresql/data
|
||||
subPath: data
|
||||
name: nextcloud-aio-database
|
||||
- mountPath: /mnt/data
|
||||
name: nextcloud-aio-database-dump
|
||||
- mountPath: /var/run/postgresql
|
||||
name: nextcloud-aio-database-tmpfs0
|
||||
terminationGracePeriodSeconds: 1800
|
||||
volumes:
|
||||
- name: nextcloud-aio-database
|
||||
@@ -78,3 +91,5 @@ spec:
|
||||
- name: nextcloud-aio-database-dump
|
||||
persistentVolumeClaim:
|
||||
claimName: nextcloud-aio-database-dump
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-database-tmpfs0
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database-dump
|
||||
name: nextcloud-aio-database-dump
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-database
|
||||
name: nextcloud-aio-database
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,11 +2,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "5432"
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-elasticsearch
|
||||
name: nextcloud-aio-elasticsearch
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,8 +17,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-fulltextsearch
|
||||
@@ -35,17 +36,29 @@ spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: ES_JAVA_OPTS
|
||||
value: -Xms1024M -Xmx1024M
|
||||
- name: POSTGRES_HOST
|
||||
value: nextcloud-aio-database
|
||||
value: -Xms512M -Xmx512M
|
||||
- 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:20230613_120442-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:20230817_065941-latest
|
||||
name: nextcloud-aio-fulltextsearch
|
||||
ports:
|
||||
- containerPort: 9200
|
||||
hostPort: 9200
|
||||
protocol: TCP
|
||||
volumeMounts:
|
||||
- mountPath: /usr/share/elasticsearch/data
|
||||
name: nextcloud-aio-elasticsearch
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9200"
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,22 +17,41 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-imaginary
|
||||
spec:
|
||||
initContainers:
|
||||
- name: init-volumes
|
||||
image: alpine
|
||||
command:
|
||||
- chmod
|
||||
- "777"
|
||||
- /nextcloud-aio-imaginary-tmpfs0
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-imaginary-tmpfs0
|
||||
mountPath: /nextcloud-aio-imaginary-tmpfs0
|
||||
containers:
|
||||
- env:
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-imaginary:20230613_120442-latest
|
||||
image: nextcloud/aio-imaginary:20230817_065941-latest
|
||||
name: nextcloud-aio-imaginary
|
||||
ports:
|
||||
- containerPort: 9000
|
||||
hostPort: 9000
|
||||
protocol: TCP
|
||||
securityContext:
|
||||
capabilities:
|
||||
add:
|
||||
- SYS_NICE
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /tmp
|
||||
name: nextcloud-aio-imaginary-tmpfs0
|
||||
volumes:
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-imaginary-tmpfs0
|
||||
{{- end }}
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9000"
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: {{ .Values.NAMESPACE }}
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec: {}
|
||||
@@ -1,13 +0,0 @@
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
metadata:
|
||||
name: nextcloud-aio
|
||||
spec:
|
||||
ingress:
|
||||
- from:
|
||||
- podSelector:
|
||||
matchLabels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
podSelector:
|
||||
matchLabels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud-data
|
||||
name: nextcloud-aio-nextcloud-data
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,11 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -15,8 +16,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
@@ -29,7 +30,10 @@ spec:
|
||||
- "777"
|
||||
- /nextcloud-aio-nextcloud
|
||||
- /nextcloud-aio-nextcloud-trusted-cacerts
|
||||
- /nextcloud-aio-nextcloud-tmpfs0
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-nextcloud-tmpfs0
|
||||
mountPath: /nextcloud-aio-nextcloud-tmpfs0
|
||||
- name: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
mountPath: /nextcloud-aio-nextcloud-trusted-cacerts
|
||||
- name: nextcloud-aio-nextcloud
|
||||
@@ -116,11 +120,12 @@ spec:
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
- name: UPDATE_NEXTCLOUD_APPS
|
||||
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
|
||||
image: nextcloud/aio-nextcloud:20230613_120442-latest
|
||||
image: nextcloud/aio-nextcloud:20230817_065941-latest
|
||||
name: nextcloud-aio-nextcloud
|
||||
ports:
|
||||
- containerPort: 9000
|
||||
- containerPort: 7867
|
||||
hostPort: 9000
|
||||
protocol: TCP
|
||||
volumeMounts:
|
||||
- mountPath: /var/www/html
|
||||
name: nextcloud-aio-nextcloud
|
||||
@@ -129,6 +134,8 @@ spec:
|
||||
- mountPath: /usr/local/share/ca-certificates
|
||||
name: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
readOnly: true
|
||||
- mountPath: /tmp
|
||||
name: nextcloud-aio-nextcloud-tmpfs0
|
||||
volumes:
|
||||
- name: nextcloud-aio-nextcloud
|
||||
persistentVolumeClaim:
|
||||
@@ -139,3 +146,5 @@ spec:
|
||||
- name: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
persistentVolumeClaim:
|
||||
claimName: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
- emptyDir: {}
|
||||
name: nextcloud-aio-nextcloud-tmpfs0
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
name: nextcloud-aio-nextcloud
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -2,18 +2,16 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "9000"
|
||||
port: 9000
|
||||
targetPort: 9000
|
||||
- name: "7867"
|
||||
port: 7867
|
||||
targetPort: 7867
|
||||
selector:
|
||||
io.kompose.service: nextcloud-aio-nextcloud
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
name: nextcloud-aio-nextcloud-trusted-cacerts
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
68
nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml
Executable file
68
nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml
Executable file
@@ -0,0 +1,68 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: nextcloud-aio-notify-push
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-notify-push
|
||||
spec:
|
||||
initContainers:
|
||||
- name: init-volumes
|
||||
image: alpine
|
||||
command:
|
||||
- chmod
|
||||
- "777"
|
||||
- /nextcloud-aio-nextcloud
|
||||
volumeMounts:
|
||||
- name: nextcloud-aio-nextcloud
|
||||
mountPath: /nextcloud-aio-nextcloud
|
||||
containers:
|
||||
- env:
|
||||
- name: NC_DOMAIN
|
||||
value: "{{ .Values.NC_DOMAIN }}"
|
||||
- name: NEXTCLOUD_HOST
|
||||
value: nextcloud-aio-nextcloud
|
||||
- name: POSTGRES_DB
|
||||
value: nextcloud_database
|
||||
- name: POSTGRES_HOST
|
||||
value: nextcloud-aio-database
|
||||
- name: POSTGRES_PASSWORD
|
||||
value: "{{ .Values.DATABASE_PASSWORD }}"
|
||||
- name: POSTGRES_USER
|
||||
value: nextcloud
|
||||
- name: REDIS_HOST
|
||||
value: nextcloud-aio-redis
|
||||
- name: REDIS_HOST_PASSWORD
|
||||
value: "{{ .Values.REDIS_PASSWORD }}"
|
||||
image: nextcloud/aio-notify-push:20230817_065941-latest
|
||||
name: nextcloud-aio-notify-push
|
||||
ports:
|
||||
- containerPort: 7867
|
||||
hostPort: 7867
|
||||
protocol: TCP
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /nextcloud
|
||||
name: nextcloud-aio-nextcloud
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: nextcloud-aio-nextcloud
|
||||
persistentVolumeClaim:
|
||||
claimName: nextcloud-aio-nextcloud
|
||||
17
nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-service.yaml
Executable file
17
nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-service.yaml
Executable file
@@ -0,0 +1,17 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "7867"
|
||||
port: 7867
|
||||
targetPort: 7867
|
||||
selector:
|
||||
io.kompose.service: nextcloud-aio-notify-push
|
||||
@@ -3,11 +3,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -16,8 +17,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-onlyoffice
|
||||
@@ -42,10 +43,12 @@ spec:
|
||||
value: "{{ .Values.ONLYOFFICE_SECRET }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-onlyoffice:20230613_120442-latest
|
||||
image: nextcloud/aio-onlyoffice:20230817_065941-latest
|
||||
name: nextcloud-aio-onlyoffice
|
||||
ports:
|
||||
- containerPort: 80
|
||||
hostPort: 80
|
||||
protocol: TCP
|
||||
volumeMounts:
|
||||
- mountPath: /var/lib/onlyoffice
|
||||
name: nextcloud-aio-onlyoffice
|
||||
|
||||
@@ -4,6 +4,7 @@ metadata:
|
||||
labels:
|
||||
io.kompose.service: nextcloud-aio-onlyoffice
|
||||
name: nextcloud-aio-onlyoffice
|
||||
namespace: {{ .Values.NAMESPACE }}
|
||||
spec:
|
||||
{{- if .Values.STORAGE_CLASS }}
|
||||
storageClassName: {{ .Values.STORAGE_CLASS }}
|
||||
|
||||
@@ -3,11 +3,12 @@ apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: "80"
|
||||
|
||||
@@ -2,11 +2,12 @@ apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
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 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
@@ -15,8 +16,8 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert -c -f latest.yml
|
||||
kompose.version: 1.28.0 (c4137012e)
|
||||
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
|
||||
kompose.version: 1.30.0 (9d8dcb518)
|
||||
labels:
|
||||
io.kompose.network/nextcloud-aio: "true"
|
||||
io.kompose.service: nextcloud-aio-redis
|
||||
@@ -37,10 +38,14 @@ spec:
|
||||
value: "{{ .Values.REDIS_PASSWORD }}"
|
||||
- name: TZ
|
||||
value: "{{ .Values.TIMEZONE }}"
|
||||
image: nextcloud/aio-redis:20230613_120442-latest
|
||||
image: nextcloud/aio-redis:20230817_065941-latest
|
||||
name: nextcloud-aio-redis
|
||||
ports:
|
||||
- containerPort: 6379
|
||||
hostPort: 6379
|
||||
protocol: TCP
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- mountPath: /data
|
||||
name: nextcloud-aio-redis
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user