NextCloud AIO
NextCloud All-In-One is an easy way to install and maintain NextCloud, including many useful plugins. Actually, it is "the official Nextcloud installation method".
However it requires to be installed on its own server, with no other docker containers installed on it. So, we will create a new incus container in order to install it.
The self-hosted version of AIO has a limit of 100 users.
However this may be fine for a personal installation, or a small organization.
1. Create a container
We can create a new container with the script create-container.sh
that we have seen before:
#wget https://linux-cli.fs.al/apps/part6/create-container.sh
#chmod +x create-container.sh
./create-container.sh nc 10.31.96.204
incus ls
2. Forward HTTP ports
cd /var/ds/sniproxy/
nano etc/sniproxy.conf
Let's add these lines to the table:
# container: nc
nc-aio\.user1\.fs\.al 10.31.96.204
Then restart it:
ds restart
3. Install AIO
-
Start the master container:
incus shell nc
docker run \
--init \
--sig-proxy=false \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 80:80 \
--publish 8080:8080 \
--publish 8443:8443 \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
--env SKIP_DOMAIN_VALIDATION=true \
ghcr.io/nextcloud-releases/all-in-one:latest -
Make sure that Xpra is installed on the host, as described here.
-
Start a browser on the host, using Xpra:
xpra --ssh="ssh" start ssh:srv1:200 --start=tilix
chromium --no-sandbox
-
Open the admin web interface of NC-AIO: https://10.31.96.204:8080/
-
Finally open: https://nc-aio.user1.fs.al/
4. Forwarding ports
Some NC apps may need some ports to be forwarded to the container, for
example Talk needs the port 3478
, tcp
and udp
. We can do it as
before.