Code Monkey home page Code Monkey logo

onlyoffice-ce-docker-license's Introduction

Patched ONLYOFFICE Docs (Community Edition)

Docker Image CI

Notes

Please don't ask for setup support. I cannot support all your different setups. Sorry.

Please also don't ask OnlyOffice devs for support if something is broken with this image.

There will be bugs. Some functionaly will absolutely be broken. Don't expect this repository to provide every feature the paid version provides.

Some mobile editing features are reverted by the patches to very old code (before they were removed). This code can not only break but also will not receive security updates.

Features

This Dockerfile and patches compile a version of OnlyOffice Docs server with mobile editing enabled in the Nextcloud apps for an unlimited amount of concurrent users.

The patches provided in this repository also try to provide basic functionality from an old release.

It can be integrated into e.g. Nextcloud or ownCloud like the official images.

Background

Just about two months after Nextcloud released their partnership with Ascensio and featured a community version of OnlyOffice, the latter decided to remove support for mobile editing of documents. This affected the Nextcloud app, killing a feature that was previously marketed by both companies.

The changes were executed without any prior notice and alienated quite a lot of home users, who would now be forced to pay more than €1.000 to unlock that previously free feature. Only after some outcries Ascensio deigned to release a statement and a new, albeit "limited", offer of €90 for home servers. This offer has since expired and their licensing tier suggests current licenses are valid for one year, starting at about €140.

In my opinion these deceptive practices of advertising a feature only to take it away are unacceptable for a company presenting itself and their products as open source.

Usage

Please refer the the official docs on how to integrate OnlyOffice into your setup.

Podman CLI

podman run \
    --name=onlyoffice \
    --detach \
    --publish=80:80 \
    docker.io/alehoho/oo-ce-docker-license

Docker CLI

docker run \
    --name=onlyoffice \
    --detach \
    --publish=80:80 \
    alehoho/oo-ce-docker-license

docker-compose.yml

services:
  onlyoffice:
    container_name: onlyoffice
    image: alehoho/oo-ce-docker-license
    ports:
      - "80:80"

Verify

To verify that the container is running successfully open [server-url]/healthcheck (has to return true) and for the version number open [server-url]/index.html and check the output of that page or [server-url]/web-apps/apps/api/documents/api.js and check the header comment.

Build

Buildah CLI

buildah build-using-dockerfile \
    --tag=onlyoffice-patched \
    https://github.com/aleho/onlyoffice-ce-docker-license.git

Docker CLI

docker build \
    --tag=onlyoffice-patched \
    https://github.com/aleho/onlyoffice-ce-docker-license.git

docker-compose.yml

services:
  onlyoffice:
    container_name: onlyoffice
    image: onlyoffice-patched
    build:
      context: https://github.com/aleho/onlyoffice-ce-docker-license.git
    

Thanks

This repo was heavily inspired by the works of Zegorax/OnlyOffice-Unlimited.

onlyoffice-ce-docker-license's People

Contributors

aleho avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

onlyoffice-ce-docker-license's Issues

Blank screen when open document

Hi!
Thank you for it, but i can't use it at all.
Steps:

  1. sudo docker run --name=onlyoffice --detach --publish=9999:80 alehoho/oo-ce-docker-license
  2. check domain for OnlyOffice:

Снимок экрана 2020-12-03 в 19 30 13

3) Create new document and see nothing... Just a blank screen

Tutorial for Installation

Hello aleho,

i have made a german tutorial for install onlyoffice in a lxc container under proxmox pve.
I think this tutorial will also work on a normal debian/ubuntu environment.
When you think it is helpful you can add the link on readme.

https://www.schreiner.pro/?p=84

Error generate ssl certificate

Hi
I'm having difficulty generating certificate with certbot --nginx, I get some errors. How can I proceed with the installation of the certificate?

Thank you very much in advance!

Docker file 6.0 TCP ECONNREFUSED ERROR

Hello Alex,

today i pulled your new image from dockerhub.
I installed it like the old images. But with the new one i become some critical errors.
When i builded from scratch like you, it will work like a charm.

2020-10-19T12:56:01.671] [ERROR] nodeJS - [AMQP] Error: connect ECONNREFUSED 127.0.0.1:5672
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
[2020-10-19T12:56:01.671] [ERROR] nodeJS - [AMQP] Error: connect ECONNREFUSED 127.0.0.1:5672
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
[2020-10-19T12:56:01.671] [ERROR] nodeJS - [AMQP] Error: connect ECONNREFUSED 127.0.0.1:5672
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)
[2020-10-19T12:56:01.671] [ERROR] nodeJS - [AMQP] Error: connect ECONNREFUSED 127.0.0.1:5672
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)

I installed it like this:

sudo docker pull alehoho/oo-ce-docker-license
sudo docker run -d --name=onlyoffice -p 80:80 --restart=always alehoho/oo-ce-docker-license

sudo docker ps
sudo docker exec -it onlyoffice /bin/bash
nano /etc/onlyoffice/documentserver/local.json

// Changed part of this file
      "token": {
        "enable": {
          "request": {
            "inbox": true,                        
            "outbox": true
          },
          "browser": true
        },
        "browser": {
                "secretFromInbox": true
        },
        "inbox": {
          "header": "Authorization"
        },
        "outbox": {
          "header": "Authorization"
        }
      },
      "secret": {
        "inbox": {
          "string": "KeinEinfachesPasswort"
        },
        "outbox": {
          "string": "KeinEinfachesPasswort"
        },
        "session": {
          "string": "KeinEinfachesPasswort"
        }
      }

I'm sorry for my bad english skills :/ But a big thank you for your work at this repo!

Erorr connection between docker containers (onlyoffice&owncloud)

Hi. I have a problem with connection between running onlyoffice docker and owncloud docker. When I try set in owncloud server params for connection to onlyoffice ( http://<IP_for_onlyoffice>) get error: Error when trying to connect (cURL error 7: Failed to connect to <IP_for_onlyoffice> port 80: No route to host)
Checking work of onlyoffice by link: <IP_for_onlyoffice>/healthcheck is Ok.
All dockers container running on one VM mashine with CentOS 7.
I do verify work on host mashine
What I did incorrect?
P.S. Owncloud install by link: https://doc.owncloud.com/server/10.5/admin_manual/installation/docker/#logging-in

New Version OnlyOffice 7.0

Hi. Thank you for this project!
After update app from Nextcloud it wants OnlyOffice 7.0 for the normal work of some new functions.
For example:
1
2

Error documentserver-letsencrypt.sh

Hello

I would like some help, I am using the /usr/bin/ocumentserver-letsencrypt.sh script but I am getting an error after generating the certificate.
nginx application does not starta, error logs:

Preparing for shutdown, it can take a lot of time, please wait... * Starting PostgreSQL 12 database server
[ OK ]

  • Starting RabbitMQ Messaging Server rabbitmq-server
    [ OK ]
    Starting supervisor: supervisord.
  • Starting periodic command scheduler cron
    [ OK ]
  • Starting nginx nginx
    [fail]
    Generating AllFonts.js, please wait...Done
    Generating presentation themes, please wait...Done
    ds:docservice: stopped
    ds:docservice: started
    ds:converter: stopped
    ds:converter: started
  • Reloading nginx configuration nginx
    [fail]
    ==> /var/log/onlyoffice/documentserver/converter/err.log <==
    ==> /var/log/onlyoffice/documentserver/converter/out.log <==
    [2021-07-05T12:55:42.991] [WARN] nodeJS - update cluster with 1 workers
    [2021-07-05T12:55:43.392] [WARN] nodeJS - worker 1091 started.
    [2021-07-05T13:00:42.325] [WARN] nodeJS - update cluster with 1 workers
    [2021-07-05T13:00:42.346] [WARN] nodeJS - worker 781 started.
    [2021-07-05T13:04:13.399] [WARN] nodeJS - update cluster with 1 workers
    [2021-07-05T13:04:13.408] [WARN] nodeJS - worker 1055 started.
    [2021-07-05T13:16:12.964] [WARN] nodeJS - update cluster with 1 workers
    [2021-07-05T13:16:12.997] [WARN] nodeJS - worker 813 started.
    [2021-07-05T13:19:44.963] [WARN] nodeJS - update cluster with 1 workers
    [2021-07-05T13:19:44.973] [WARN] nodeJS - worker 1049 started.
    ==> /var/log/onlyoffice/documentserver/docservice/err.log <==
    ==> /var/log/onlyoffice/documentserver/docservice/out.log <==
    [2021-07-05T13:00:44.137] [WARN] nodeJS - Express server listening on port 8000 in production-linux mode. Version: 6.3.0. Build: 111
    [2021-07-05T13:04:12.957] [WARN] nodeJS - Express server starting...
    [2021-07-05T13:04:12.965] [WARN] nodeJS - Failed to subscribe to plugin folder updates. When changing the list of plugins, you must restart the server. https://nodejs.org/docs/latest/api/fs.html#fs_availability
    [2021-07-05T13:04:13.222] [WARN] nodeJS - Express server listening on port 8000 in production-linux mode. Version: 6.3.0. Build: 111
    [2021-07-05T13:16:14.779] [WARN] nodeJS - Express server starting...
    [2021-07-05T13:16:14.791] [WARN] nodeJS - Failed to subscribe to plugin folder updates. When changing the list of plugins, you must restart the server. https://nodejs.org/docs/latest/api/fs.html#fs_availability
    [2021-07-05T13:16:14.940] [WARN] nodeJS - Express server listening on port 8000 in production-linux mode. Version: 6.3.0. Build: 111
    [2021-07-05T13:19:44.434] [WARN] nodeJS - Express server starting...
    [2021-07-05T13:19:44.439] [WARN] nodeJS - Failed to subscribe to plugin folder updates. When changing the list of plugins, you must restart the server. https://nodejs.org/docs/latest/api/fs.html#fs_availability
    [2021-07-05T13:19:44.591] [WARN] nodeJS - Express server listening on port 8000 in production-linux mode. Version: 6.3.0. Build: 111
    ==> /var/log/onlyoffice/documentserver/metrics/err.log <==
    ==> /var/log/onlyoffice/documentserver/metrics/out.log <==

Se puder ajudar, agradeço!

failed to create endpoint priceless_lewin on network bridge

Ive been running this for about 6 months now and havent seen this error before. Is this a client side config, or something introduced through 6.2 version?

# docker build --tag=onlyoffice-patched https://github.com/aleho/onlyoffice-ce-docker-license.git

Sending build context to Docker daemon  78.85kB
Step 1/30 : ARG product_version=6.2.0
Step 2/30 : ARG build_number=123
Step 3/30 : ARG oo_root='/var/www/onlyoffice/documentserver'
Step 4/30 : FROM onlyoffice/documentserver:${product_version}.${build_number} as build-stage
6.2.0.123: Pulling from onlyoffice/documentserver
83ee3a23efb7: Already exists
db98fc6f11f0: Already exists
f611acd52c6c: Already exists
1c793b3fbf5f: Pull complete
b37e9fe2f61a: Pull complete
831bbdeb7675: Pull complete
3d01ba254a78: Pull complete
Digest: sha256:3076745f11462786328b8c1604f0b4df2f9dda47527b3743c5dc5dfbaab13215
Status: Downloaded newer image for onlyoffice/documentserver:6.2.0.123
 ---> 512373e541c2
Step 5/30 : ARG product_version
 ---> Running in b2f3a341a463
Removing intermediate container b2f3a341a463
 ---> 302163207b39
Step 6/30 : ARG build_number
 ---> Running in d356b768e3d7
Removing intermediate container d356b768e3d7
 ---> 615cee522024
Step 7/30 : ARG oo_root
 ---> Running in 74474fdbcb75
Removing intermediate container 74474fdbcb75
 ---> 012fb2dcdfa7
Step 8/30 : ENV PRODUCT_VERSION=${product_version}
 ---> Running in c21e897e1f36
Removing intermediate container c21e897e1f36
 ---> 1fd39c37bd60
Step 9/30 : ENV BUILD_NUMBER=${build_number}
 ---> Running in 76d53959a652
Removing intermediate container 76d53959a652
 ---> 1edb2db8f159
Step 10/30 : ARG me_search='isSupportEditFeature:function(){return!1}'
 ---> Running in e1849930cbde
Removing intermediate container e1849930cbde
 ---> f0c01e02658b
Step 11/30 : ARG me_patch='s/isSupportEditFeature:function(){return!1}/isSupportEditFeature:function(){return true}/g'
 ---> Running in 862b4caebbc2
Removing intermediate container 862b4caebbc2
 ---> 6c0948a04b2d
Step 12/30 : RUN grep -q "${me_search}" ${oo_root}/web-apps/apps/documenteditor/mobile/app.js   && sed -si "${me_patch}" ${oo_root}/web-apps/apps/documenteditor/mobile/app.js
 ---> Running in 3660f6de59ae
failed to create endpoint priceless_lewin on network bridge: failed to add the host (veth2faca5f) <=> sandbox (veth43ca11f) pair interfaces: operation not supported

Problems with mobile editing

Hello. Thanks for the great software!

I can't insert a shape or a photo in mobile editing. This worked fine in the original version.

Software used
Nextcloud 20.0.0
Onlyoffice 6.2.2.21
Docker version 20.10.5

Problems building 6.3.1.32

I can pull the image and use that, but for some reason, building the image results in the following error:

$ docker build     --tag=onlyoffice-patched   https://github.com/aleho/onlyoffice-ce-docker-license.git
unable to prepare context: unable to 'git clone' to temporary context directory: error fetching: fatal: couldn't find remote ref master
: exit status 128

I've run the git clone commands separately without any problem, using --branch v6.3.1.32, so this is just a problem building.

no mobile edit with 5.6.5.3

Hello,

with the new 5.6.5.3 version the mobile editing doesn't work anymore.
With the previous version everything works perfekt.

Can you fix this? Many thanks!

Congratulations, it worked perfectly

@aleho
Congratulations on your work, it worked perfectly. I agree with you, it is unacceptable for the company to say that the software is open-source and yet it puts blockages within the system.
I repeat, congratulations on your excellent work and I also protest with you this misrepresentation of open source software by some companies.

Presentation editor is broken

Hello.

The mobile version of the presentation editor does not seem to be functioning.

Version: oo-ce-docker-license:6.3.0.111

2bf115c8c349736fc19cedd4ab5ea049

Use multi-stage build in Dockerfile

Using multi-stage build saves ~200MB compressed size. Here is Dockerfile:

ARG product_version=6.1.1
ARG build_number=53

FROM onlyoffice/documentserver:${product_version}.${build_number} AS builder
LABEL stage=builder
ARG product_version
ARG build_number

ARG build_deps="git make g++ nodejs npm"
RUN apt-get update && apt-get install -y ${build_deps}

ARG tag=v${product_version}.${build_number}
RUN  mkdir /build \
  && git clone --quiet --branch $tag --depth 1 https://github.com/ONLYOFFICE/build_tools.git /build/build_tools \
  && git clone --quiet --branch $tag --depth 1 https://github.com/ONLYOFFICE/server.git      /build/server

COPY license.patch /build/

WORKDIR /build/server

ENV PRODUCT_VERSION=${product_version}
ENV BUILD_NUMBER=${build_number}

RUN  npm install -g pkg grunt grunt-cli \
  && git apply /build/license.patch \
  && make \
  && pkg /build/build_tools/out/linux_64/onlyoffice/documentserver/server/FileConverter --targets=node10-linux -o /build/converter \
  && pkg /build/build_tools/out/linux_64/onlyoffice/documentserver/server/DocService --targets=node10-linux --options max_old_space_size=4096 -o /build/docservice \
  && cp /build/converter /var/www/onlyoffice/documentserver/server/FileConverter/converter \
  && cp /build/docservice /var/www/onlyoffice/documentserver/server/DocService/docservice

FROM onlyoffice/documentserver:${product_version}.${build_number}

RUN sed -si \
  's/isSupportEditFeature:function(){return!1}/isSupportEditFeature:function(){return true}/g' \
  /var/www/onlyoffice/documentserver/web-apps/apps/documenteditor/mobile/app.js \
  /var/www/onlyoffice/documentserver/web-apps/apps/presentationeditor/mobile/app.js \
  /var/www/onlyoffice/documentserver/web-apps/apps/spreadsheeteditor/mobile/app.js

COPY --from=builder /build/converter /var/www/onlyoffice/documentserver/server/FileConverter/converter
COPY --from=builder /build/docservice /var/www/onlyoffice/documentserver/server/DocService/docservice

WORKDIR /

Label is used for easier stage image cleanup when build is done:
$ docker image prune --filter label=stage=builder

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.