All Projects → julienfastre → docker-sogo

julienfastre / docker-sogo

Licence: GPL-2.0 License
Run sogo in a docker container.

Programming Languages

Nginx
273 projects

Projects that are alternatives of or similar to docker-sogo

Mailcow Dockerized
mailcow: dockerized - 🐮 + 🐋 = 💕
Stars: ✭ 4,573 (+22765%)
Mutual labels:  imap, groupware, sogo
yggmail
End-to-end encrypted email for the mesh networking age
Stars: ✭ 72 (+260%)
Mutual labels:  imap, smtp-server
groupoffice
Group Office groupware and CRM
Stars: ✭ 80 (+300%)
Mutual labels:  calendar, groupware
Docker Postfix
Simple SMTP server / postfix null relay host for your Docker and Kubernetes containers. Based on Alpine Linux.
Stars: ✭ 163 (+715%)
Mutual labels:  docker-container, smtp-server
tsdav
WebDAV, CALDAV, and CARDDAV client for Nodejs and the Browser
Stars: ✭ 33 (+65%)
Mutual labels:  calendar, caldav
Homebox
A set of ansible scripts to build a personal mail server / private cloud / etc.
Stars: ✭ 260 (+1200%)
Mutual labels:  calendar, imap
Nager.date
🌎 Worldwide public holiday
Stars: ✭ 560 (+2700%)
Mutual labels:  calendar, docker-container
docker-protonmail-bridge
Run ProtonMail Bridge in a docker container
Stars: ✭ 34 (+70%)
Mutual labels:  imap, smtp-server
doctrine-expressive-example
Example PHP REST API application built with Expressive using Doctrine ORM, complete with associations, pagination, and DB connectivity inside Docker containers. Used in #Beachcasts videos on YouTube.
Stars: ✭ 36 (+80%)
Mutual labels:  docker-container
graphsense-blocksci
A dockerized component to synchronize BlockSci data to Apache Cassandra
Stars: ✭ 18 (-10%)
Mutual labels:  docker-container
wepy-com-calendar
一个基于wepy的日历组件,内置多套皮肤,可启用打卡功能
Stars: ✭ 33 (+65%)
Mutual labels:  calendar
WeekToDoWeb
WeekToDo is a free minimalist weekly planner app focused on privacy. Schedule your tasks and projects with to do lists and a calendar. Available for Windows, Mac, Linux or online.
Stars: ✭ 48 (+140%)
Mutual labels:  calendar
davx5-ose
DAVx⁵ is an open-source CalDAV/CardDAV suite and sync app for Android. You can also access your online files (WebDAV) with it.
Stars: ✭ 160 (+700%)
Mutual labels:  caldav
smtp-dkim-signer
SMTP-proxy that DKIM-signs e-mails before submission to an upstream SMTP-server.
Stars: ✭ 28 (+40%)
Mutual labels:  smtp-server
calendar-view-plugin
Jenkins Calendar View Plugin: Shows past and future builds in a calendar view
Stars: ✭ 17 (-15%)
Mutual labels:  calendar
kalle
Kalle is a blitz.js based appointment scheduling tool that allows you to schedule an appointment with customers, collegues or friends within seconds.
Stars: ✭ 71 (+255%)
Mutual labels:  caldav
dokku-posteio
Poste.io plugin for Dokku
Stars: ✭ 27 (+35%)
Mutual labels:  imap
OmniList
开源的时间管理App,基于Material Design设计
Stars: ✭ 61 (+205%)
Mutual labels:  calendar
yuanful-ui
(微信小程序插件) yuanful-ui是一套可添加到微信小程序内直接使用的免费功能插件,无需重复开发,为用户提供更丰富的服务。
Stars: ✭ 30 (+50%)
Mutual labels:  calendar
docker-ros-x11
A docker environment with ROS, Gazebo, X11 and Tensorflow
Stars: ✭ 29 (+45%)
Mutual labels:  docker-container

What is SOGo ?

SOGo (formerly named Scalable OpenGroupware.org) is an open source collaborative software (groupware) server with a focus on simplicity and scalability. It is developed in Objective-C using PostgreSQL, Apache, and IMAP.

SOGo provides collaboration for Mozilla Thunderbird/Lightning, Microsoft Outlook, Apple iCal/iPhone and BlackBerry client users. Its features include the ability to share calendars, address books and e-mail using an open source, cross-platform environment. The Funambol middleware and the Funambol SOGo Connector allow SyncML clients to synchronize contacts, events and tasks.

SOGo supports standard groupware capabilities including CalDAV, CalDAV auto-scheduling, CardDAV, WebDAV Sync, WebDAV ACLs, and iCalendar.

Microsoft Outlook support is provided through an OpenChange storage provider to remove the MAPI dependency for sharing address books, calendars and e-mails. Native connectivity to Microsoft Outlook allows SOGo to emulate a Microsoft Exchange server to Outlook clients.

(source : Wikipedia contributors, "SOGo," Wikipedia, The Free Encyclopedia, https://en.wikipedia.org/w/index.php?title=SOGo&oldid=731475399 (accessed August 5, 2016). )

Use with care and contribute to Inverse Inc

This image is in use in a organization of 80 people, without any known problem (except when we migrated from 2.3 to 3.2, see above).

Since July 2016, Inverse Inc. ask for some support to provide debian packages. This should help them to increase their investments in SOGo. If you can afford this, you should consider getting support on Inverse Inc.

How to use this image

This image requires :

  • a working IMAP and SMTP server (not provided under docker container) ;
  • a postgresql / mysql database ;
  • memcached ;
  • some way to authenticate user: LDAP, SQL table, ... (see the docs)
  • a configuration file

This container only execute the sogod process, taking into account the best practice "running one process per container".

In order to run it You should create an adapt a config file to your needs, using the docs. This file should be recorded into the container as /etc/sogo/sogo.conf.

Using the command line

TO BE DONE

Using docker-compose

This is a docker-compose.yml file you could adapt to launch this image :

Note : the docker compose file in this project can be used, but it is using a non-standard port. After login, if you use a different port thant port 80, the redirection will not work and you will be redirected to http://localhost/SOGo/<your path> instead of http://localhost:8080/SOGo/<your path>. Simply add the missing port part (replace http://localhost/SOGo by http://localhost:8080/SOGo).


version: '2'

services:
   sogo:
# if you prefer building by yourself
      build: 
         context: .
         args:
         # replace by your desired  version
            version: x.x.x
# if you prefer using a pre-built image (replace by your desired version)
#      image: julienfastre/sogo:x.x
      links: 
         - db
      volumes:
         # replace by your own file
         - /path/to/your/file/sogo.conf:/etc/sogo/sogo.conf
      environment:
         # set the timezone in environment (see https://serverfault.com/a/826222/194817)
         - "TZ=Europe/Brussels"
   db:
      image: postgres:9.5
      # for debug purpose only: reach the database from outside
      #ports:
      #   - "5432"
   memcached:
      image: memcached:1.4-alpine
   nginx:
      image: nginx
      links:
         - sogo
      volumes_from:
         # you will be able to serve assets from sogo image
         - sogo:ro
      ports:
          # publish on port 80
          - "80:80"
          # if port 80 is already in use, **replace** by this line. (for testing only) Note that, after login, you will have to add the ":8080" in url
#         - "8080:80"
      volumes: 
         - ./nginx.conf:/etc/nginx/nginx.conf:ro

You should then be able to reach sogo on http://localhost:PORT/SOGo. Using the actual nginx.conf file and using a different port than the port 80 or 443, after login, you will encounter an http error on page http://localhost/SOGo/<something> Simply re-add the PORT number to reach correct server.

How to build this image

The parameter version is required to build this image.

Example of how to build this image :

# download sources
$ git clone https://framagit.org/julienfastre/docker-sogo.git
$ cd docker-sogo
# launch the build using specific version (replace with your own version)
$ docker build --build-arg version=x.x.x .

Timezone issue

The timezone may be set in environement, using the TZ variable. See example in docker-compose.yml.

migrating from 2.3 to 3.1|3.2 using docker-compose

The assets (css, js, ...) are contained in a volume. Those assets are completely different from version 2.3 to version 3.1 and 3.2. If you used docker-compose and migrated from 2.3 to 3.2, you have to either :

  • remove the volume containing those assets, to let a clean place for the asset for the new version.
  • or use an anonymous volume, which will be re-created on each restart

Usage of sendmail / SOGoMailingMechanism

Sendmail is not installed in this image: sogo must be able to send mails using a smtp server. The sogo.conf file must have the option SOGoMailingMechanism on smtp. See the section "SMTP Server Configuration" of the sogo manual.

Bug report

Please reports bug on https://github.com/julienfastre/docker-sogo/issues

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].