Weekend Project: Share your experiences with kopano-docker


  • Kopano

    Hello community,

    a while ago we already shared our dockerised Kopano setup with you and also had two blog posts about it at https://kopano.com/blog/building-docker-containers-for-kopano/ and https://kopano.com/blog/using-docker-to-spin-up-a-kopano-environment/.

    Head over to https://github.com/kopano-dev/kopano-docker check out the project and provide feedback here.



  • Dear Mr. Bartels.

    After using Kopano (versions 6 to 8) for a long time now, I decided to upgrade to version 10 on ubuntu 18. First, I tried zokradons git repository, but i quited because no component was working out-of-the-box.
    So I tried to install a minimum setup.

    My system: A 4-core dedicated server with keyhelp installed (apache, mysql, postfix, …), together with other docker containers (nextcloud, gitea, synapse, …)
    I want to install kopano for my family members only, so I usually configure postfix to pass a few email-addresses to kopano-dagent.
    My kopano container setup currently consists only of a database (mariadb), a kopano-server and kopano-webapp.

    Using my old configuration files, it was quite easy to configure the kopano-server to use the database, instead of LDAP.
    But the webapp caused some serious headaches:

    • The current version throws internal errors because php-7.3 is used but not installed.
    • So I switched to an older version, which now shows the “Augementing Teamwork” picture, but the login does not show up.
    • The docker logs don’t show any connection attempt to the kopano-server
    • I can log into the kopano-server with docker exec and create stores and users

    I tried to supply a statement like
    KCCONF_WEBAPP_DEFAULT_SERVER=http://kopano_server:236/kopano
    in the docker-compose file, but there’s nothing similar in the git repositry, so I am stuck how to access the kopano-server…
    If I access my server at (tld):236, I can see a SOAP-ENV:Envelope, so I guess the server is running an listening…

    Perhaps you’ve got an idea how to solve this. It would be great if someone could supply a minimum configuration to get the basics up and running…

    Best regards, and thanks for your good work.
    X


  • Kopano

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    but i quited because no component was working out-of-the-box.

    That’s strange. There is some testing included in the project to ensure that only containers get uploaded to the registry that start up. Especially with the provided compose file and the setup script you should have a running system in no time. Maybe your docker/docker-compose version is too old?

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    The current version throws internal errors because php-7.3 is used but not installed.

    Do you have a concrete error message?

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    So I switched to an older version, which now shows the “Augementing Teamwork” picture, but the login does not show up.

    In the default configuration webapp uses Konnect for sign-in. From your list of components you are not running it, though.

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    I tried to supply a statement like
    KCCONF_WEBAPP_DEFAULT_SERVER=http://kopano_server:236/kopano
    in the docker-compose file, but there’s nothing similar in the git repositry,

    Where and why do you want to specify this?

    There is a section with some commands to troubleshoot an installation. I’d recommend to open an issue at https://github.com/zokradonh/kopano-docker and include your current configuration in that so that the error can be reproduced.



  • @fbartels said in Weekend Project: Share your experiences with kopano-docker:

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    but i quited because no component was working out-of-the-box.

    That’s strange. There is some testing included in the project to ensure that only containers get uploaded to the registry that start up. Especially with the provided compose file and the setup script you should have a running system in no time. Maybe your docker/docker-compose version is too old?

    Most of it, I guess, has something to do with my running keyhelp installation: The Ports for HTTP, HTTPS, IMAP, … are in use, so that the mailserver and the kopano portmapper (kopano_konnect?) don’t start correctly. There are so many components, which are all enabled, which makes it different to see which one causes the issues…

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    The current version throws internal errors because php-7.3 is used but not installed.

    Do you have a concrete error message?
    I didn’t write down the exact message, but it was something like “var/run/php/php7.3-fpm.sock: Not found”, when using docker exec -it bash, I could see that only php7.0 was present there…

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    So I switched to an older version, which now shows the “Augementing Teamwork” picture, but the login does not show up.

    In the default configuration webapp uses Konnect for sign-in. From your list of components you are not running it, though.

    Right. I removed the OICD lines present in the git config file, and without these, the webapp connected fine.

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    I tried to supply a statement like
    KCCONF_WEBAPP_DEFAULT_SERVER=http://kopano_server:236/kopano
    in the docker-compose file, but there’s nothing similar in the git repositry,

    Where and why do you want to specify this?

    If I do not specifiy this, the webapp simply says “cannot connect to kopano core” (the log says something about “connecting to :default” which fails)
    I supplied it to webapp (currently as “KCCONF_WEBAPP_DEFAULT_SERVER=http://kopano_server:236”), and now the webapp can connect to the kopano core…

    There is a section with some commands to troubleshoot an installation. I’d recommend to open an issue at https://github.com/zokradonh/kopano-docker and include your current configuration in that so that the error can be reproduced.

    Last, but not least:
    Please let me emphasize that all you guys (kopano employees, zokradonh and you) are doing a very nice job. I really, really like kopano (Although I use it for my family only, and don’t need most of the features). And I know that the way of incorporating a kopano installation into a given postfix/webmail/keyhelp installation may be strange and uncommon…

    I am a senior hardware developer, and doing this IT-stuff for fun (and to stay at eye-level with my software collueges). Using docker and docker-compose seems a bit … bulky …, but the fact that a single “docker-compose pull” can get you the latest software upgrade seems to be very rewarding.

    So thank you very much,
    Best regards,
    X


  • Kopano

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    The Ports for HTTP, HTTPS, IMAP, … are in use, […] which makes it different to see which one causes the issues…

    docker-compose will say which container failed to start because the specified was already in use.

    From your message I understand that you managed to solve your problems?



  • @fbartels said in Weekend Project: Share your experiences with kopano-docker:

    From your message I understand that you managed to solve your problems?

    Yes, most of it

    • If you expose the database port 3306, the hosts postfix installation can access the database and pass specific email addresses into the container
    • I assigned a fixed subnet to the kopano container, which is needed for the postfix “mynetworks” settings (otherwise massages are denied due to relaying restrictions)
    • For the spooler, I had to assign “KCCONF_SPOOLER_SMTP_SERVER” manually to the server’s IP (assigning “mail” in /etc/hosts didn’t work)

    The server is running, can send and receive emails, open existing attachments…
    The last two things I am working on is to bring z-push/activeSync to live, and to remove the “unhealthy” state for the webapp container (the response string is too long to see which of the checks failed.)

    If you like, I can publish my existing versions of the docker-compose file. Perhaps it helps people to setup their own environments. But it seems dockerized kopano is of no common interest :-(…

    Thanks for your help
    X


  • Kopano

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    and to remove the “unhealthy” state for the webapp container (the response string is too long to see which of the checks failed.)

    I think for this you just have to pull a newer image. The healthcheck was failing after the Buster upgrade, but that was fixed meanwhile.

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    If you like, I can publish my existing versions of the docker-compose file.

    Yes, that would certainly make it easier to understand what you have done and provider better suggestions. There is already an example for a separate WebApp at https://github.com/zokradonh/kopano-docker/blob/master/examples/webapp.yml. You could add another example named e.g. upgrade-from-packages.yml.

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    But it seems dockerized kopano is of no common interest :-(…

    I would not say that. In all bigger projects we are involved in Kopano is supposed to run in Kubernetes environments, these environments use the same containers as their base. In addition there were quite a few people at the last Fosdem specifically asking for containers. So I think more and more admins are warming up to the benefits and thinking of containers.



  • Dear Mr. Bartels.

    Sorry for this delay, but due to Corona the Kopano/Docker project had to be paused…
    But perhaps you can give some hints about a current problem:

    I want to have some plugins installed (most important SMIME and spell-checking)
    But although I downloaded the zokradonh git-hub repository, called the setup.sh and copied the settings provided there, the webapp doesn’t display any plugins.

    .env -->
     ADDITIONAL_KOPANO_WEBAPP_PLUGINS="kopano-webapp-plugin-spell kopano-webapp-plugin-spell-de-de kopano-webapp-plugin-files kopano-webapp-plugin-filesbackend-owncl\
    oud kopano-webapp-plugin-smime"
    
    docker-compose.yaml -->
      kopano_webapp:
        image: zokradonh/kopano_webapp:${WEBAPP_VERSION:-latest}
        read_only: false
        restart: unless-stopped
        hostname: kopano_webapp
        depends_on:
          - kopano_server
        volumes:
          - /etc/machine-id:/etc/machine-id
          - /etc/machine-id:/var/lib/dbus/machine-id
          - ./kopanosocket/:/run/kopano
          - ./kopanossl/:/kopano/ssl
          - ./kopanowebapp/:/var/lib/kopano-webapp/
          - ./log/:/var/log/kopano/
        environment:
          - ADDITIONAL_KOPANO_WEBAPP_PLUGINS=${ADDITIONAL_KOPANO_WEBAPP_PLUGINS}
          - KCCONF_WEBAPP_INSECURE_COOKIES=true
          - KCCONF_WEBAPP_DEFAULT_SERVER=http://kopano_server:236
          - KCCONF_WEBAPP_LOG_USER_LEVEL=LOGLEVEL_DEBUG
          - KCCONF_WEBAPPPLUGIN_SMIME
    

    I tried to understand the /kopano/start.sh script, but I failed to detect why the “apt install” isn’t called on startup…
    Do you know is plugin installation should work? Do I have to add an editional volume for that?

    (There seems to be no difference if I use zokradonh or kopano images)

    In addition, I would like to ask if you guys at Kopano could offer some “personal licence”.
    I would like to support Kopano with a PRO Licence with Webmeeting support, but this would result in 20x30€=600€ per year in licence cost.
    A non-profit license for 5 users with PRO features for less than 100€ would be nice!

    Best regards,
    Dirk


  • Kopano

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    I tried to understand the /kopano/start.sh script, but I failed to detect why the “apt install” isn’t called on startup…

    It seems the check in https://github.com/zokradonh/kopano-docker/blob/master/webapp/start.sh#L19 is always failing and therefore also does not install packages, even if it would be possible.

    Generally speaking if you need a certain set if plugins I would rather recommend to build an own container with these. Installing packages at runtime seemed like a nice hack to not overload the image with too many plugins, but this is has not really been a good approach otherwise.

    There is an example Dockerfile already in the project at https://github.com/zokradonh/kopano-docker/blob/master/webapp/Dockerfile.plugins (or if you are generally already building kopano_webapp already then it would pick up the env already and include the packages already at build time).

    @xplod-ing said in Weekend Project: Share your experiences with kopano-docker:

    A non-profit license for 5 users with PRO features for less than 100€ would be nice!

    But Kopano “Basic” is already available for 75€ and Kopano Meet is free for up to 10 users.

    I am locking this topic, since its original purpose is already fulfilled. If you have any further questions please open a new topic or an issue at the Github project.


Log in to reply