Monday, May 14, 2018

Install Group-Office on a Synology NAS with Docker


This is a walkthrough on how to install Group-Office on a Synology NAS with docker. Make sure you've installed Docker via the Synology package center.
  1. Launch Docker
  2. Go to the “Registry” tab and search for “mariadb”. Double click to download the latest:

  3. Search for “groupoffice” and install the latest “intermesh/groupoffice”:

  4. Go to the image tab and double click “maridb” to create a container called “godb”.
  5. Click on “Advanced Settings” and set in the “Environment” tab:
    MYSQL_USER=groupoffice
    MYSQL_PASSWORD=groupoffice
    MYSQL_DATABASE=groupoffice
    MYSQL_ROOT_PASSWORD=groupoffice

  6. Create a folder for the “/var/lib/mysql” volume in the “Volumes” tab.

  7. Click “Apply” to create the container.
  8. Now double click the “intermesh/groupoffice” container and go to the “Advanced Settings”.
  9. In the “Links” tab create a link to “godb” and call it “db”:
  10. Go to the "Volume" tab and mount a folder on "/var/lib/groupoffice":

  11. Review the “Environment” tab. Set apache server name and email:

  12. Check the port settings and launch your browser to the host and port. You should see the Group-Office installation screen. If you get the message "Please create a writable config.,ini" file then either /var/lib/groupoffice is not writable or the database connection can't be established. Please review those if you get that message.
  13. Finally you must add a scheduled task for GroupOffice. Go to Control Panel -> Task Scheduler on the Synology UI and choose Create -> Scheduled Task:






    Configure this command:

    /usr/local/bin/docker exec --user www-data intermesh-groupoffice1 php /usr/local/share/groupoffice/cron.php
  14. You're up and running!

Install SSL certificate

You probably need to install an SSL certificate too. This can be done easily. I've generated a Let's encrypt certificate at Control Panel -> Security:


  1. Right click on the certificate and choose "Export certificate". 
  2. Extract those files in a folder on the synology NAS called "docker/certs".
  3. The add a file called "apache.conf" and put this in:

    SSLCertificateKeyFile /etc/ssl/groupoffice/privkey.pem
    SSLCertificateFile /etc/ssl/groupoffice/cert.pem
    SSLCertificateChainFile /etc/ssl/groupoffice/chain.pem
  4. The folder on Docker should look like this:
  5. Edit the Docker container settings of groupoffice and mount this folder at "/etc/ssl/groupoffice"
  6. Check the SSL port settings and start the container. You should now have SSL!

Install license files

If you purchased additional modules from Intermesh you can install the licenses by mounting them in the Volume tab: