From 12622b9091b075341982e6be050d513517f2c470 Mon Sep 17 00:00:00 2001 From: coolnsx Date: Sun, 29 Jun 2025 19:58:31 +0530 Subject: [PATCH] friendship ended with nextcloud now opencloud is my new friend --- opencloud/env.example | 41 ++++++++++++++++++++++++++++++ opencloud/opencloud.container | 25 ++++++++++++++++++ opencloud/opencloud.pod | 13 ++++++++++ opencloud/opencloud_wopi.container | 26 +++++++++++++++++++ opencloud/readme.md | 14 ++++++++++ 5 files changed, 119 insertions(+) create mode 100644 opencloud/env.example create mode 100644 opencloud/opencloud.container create mode 100644 opencloud/opencloud.pod create mode 100644 opencloud/opencloud_wopi.container create mode 100644 opencloud/readme.md diff --git a/opencloud/env.example b/opencloud/env.example new file mode 100644 index 0000000..24fb158 --- /dev/null +++ b/opencloud/env.example @@ -0,0 +1,41 @@ +PUID=1000 +PGID=1000 +TZ=Asia/Kolkata +EXTERNAL_DIR=/path/to/storage + +OC_LOG_LEVEL=info +OC_URL=https://cloud.example.com +PROXY_HTTP_ADDR=0.0.0.0:9200 +# do not use SSL between the reverse proxy and OpenCloud +PROXY_TLS=false +OC_INSECURE=true +# email server (if configured) +NOTIFICATIONS_SMTP_HOST= +NOTIFICATIONS_SMTP_PORT= +NOTIFICATIONS_SMTP_SENDER= +NOTIFICATIONS_SMTP_USERNAME= +NOTIFICATIONS_SMTP_PASSWORD= +NOTIFICATIONS_SMTP_INSECURE=false +NOTIFICATIONS_SMTP_AUTHENTICATION="1" +NOTIFICATIONS_SMTP_ENCRYPTION="none" +FRONTEND_ARCHIVER_MAX_SIZE="10000000000" +# make the registry available to the app provider containers +MICRO_REGISTRY_ADDRESS=0.0.0.0:9233 +NATS_NATS_HOST=0.0.0.0 +NATS_NATS_PORT=9233 +PROXY_CSP_CONFIG_FILE_LOCATION=/etc/opencloud/csp.yaml +# these three vars are needed to the csp config file to include the web office apps and the importer +COLLABORA_DOMAIN=office.example.com + +# collaboration server +COLLABORATION_GRPC_ADDR=0.0.0.0:9301 +COLLABORATION_HTTP_ADDR=0.0.0.0:9300 +COLLABORATION_WOPI_SRC=https://wopiserver.example.com +COLLABORATION_APP_NAME=CollaboraOnline +COLLABORATION_APP_PRODUCT=Collabora +COLLABORATION_APP_ADDR=https://office.example.com +COLLABORATION_APP_ICON=https://office.example.com/favicon.ico +COLLABORATION_APP_INSECURE=false +COLLABORATION_APP_PROOF_DISABLE=true +COLLABORATION_CS3API_DATAGATEWAY_INSECURE=true +COLLABORATION_LOG_LEVEL="info" diff --git a/opencloud/opencloud.container b/opencloud/opencloud.container new file mode 100644 index 0000000..259acb5 --- /dev/null +++ b/opencloud/opencloud.container @@ -0,0 +1,25 @@ +[Unit] +Description=Opencloud Container + +[Container] +Pod=opencloud.pod +ContainerName=opencloud +Image=docker.io/opencloudeu/opencloud-rolling:latest + +# Enable auto-update container +AutoUpdate=registry +# pass this to attach it to container +EnvironmentFile=./.env + +Volume=%h/podman/opencloud:/etc/opencloud +Volume=${EXTERNAL_DIR}:/var/lib/opencloud + +[Service] +# pass this to autofill above variables +EnvironmentFile=%h/.config/containers/systemd/opencloud/.env +Restart=always +TimeoutStartSec=300 + +[Install] +WantedBy=default.target + diff --git a/opencloud/opencloud.pod b/opencloud/opencloud.pod new file mode 100644 index 0000000..e8bc18e --- /dev/null +++ b/opencloud/opencloud.pod @@ -0,0 +1,13 @@ +[Unit] +Description=Opencloud Pod + +[Pod] +PodName=opencloud + +Network=host +#PublishPort=9200:9200 +#PublishPort=9300:9300 + +#to satisfy opencloud bitch permissions problems +UIDMap=1000:0:1 +UIDMap=0:1:1000 diff --git a/opencloud/opencloud_wopi.container b/opencloud/opencloud_wopi.container new file mode 100644 index 0000000..a9a9b6b --- /dev/null +++ b/opencloud/opencloud_wopi.container @@ -0,0 +1,26 @@ +[Unit] +Description=Opencloud WOPIServer Container + +[Container] +Pod=opencloud.pod +ContainerName=opencloud_wopi +Image=docker.io/opencloudeu/opencloud-rolling:latest + +Exec=collaboration server + +# Enable auto-update container +AutoUpdate=registry +# pass this to attach it to container +EnvironmentFile=./.env + +Volume=%h/podman/opencloud:/etc/opencloud + +[Service] +# pass this to autofill above variables +EnvironmentFile=%h/.config/containers/systemd/opencloud/.env +Restart=always +TimeoutStartSec=300 + +[Install] +WantedBy=default.target + diff --git a/opencloud/readme.md b/opencloud/readme.md new file mode 100644 index 0000000..fab7cd4 --- /dev/null +++ b/opencloud/readme.md @@ -0,0 +1,14 @@ +# Opencloud +- Run this when you are setting this up for first time +``` +podman run --rm -it \ + -v $HOME/podman/opencloud:/etc/opencloud \ + -v $HOME/opencloud:/var/lib/opencloud \ + -e IDM_ADMIN_PASSWORD=admin \ + opencloudeu/opencloud-rolling:latest init +``` + + + +## Major Problem +- None, documentation is lacking some important parts and all the resources are put into docker compose instruction and if you want to do manual compose you are on your own