You should have Docker (and Docker Compose) installed and know how to create a swarm. The instructions that follow assume you are working in a shell that is configured to talk to a Docker swarm.
- Clone this repository.
- Checkout the
feature/habranch.
Follow the instructions in ./build/README to
- Build the Zimbra packaging (which will be stored in a local Docker volume)
- Build the base `zm-docker` service image
- Build the `zm-docker` service images
Deploying the zm-docker stack (via the make build-all command) will generate some default values for passwords for you. If you like, you may change them to be whatever you like.
Edit these files in the .secrets directory and enter passwords that you want to be used for the corresponding services, before deploying the stack.
admin_account_passwordham_account_passwordldap.amavis_passwordldap.master_passwordldap.nginx_passwordldap.postfix_passwordldap.replication_passwordldap.root_passwordmysql.passwordspam_account_passwordvirus_quarantine_account_password
- The default value of
admin_account_passwordistest123. This is what the Genesis tests expect it to be. - Note that
make cleanwill remove the.config,.secrets, and.keystoredirectories, so exercise caution with that command.
If desired, edit these files in the .config directory and enter your preferred values.
admin_account_nameav_notify_emaildomain_namegal_sync_account_nameham_account_namespam_account_namevirus_quarantine_account_namezimbra_ldap_userdn
make up
If desired, monitor the state of of the zm-docker_zmc-proxy service. When it has completed initialization, all services will be available:
$ docker service logs -f zm-docker_zmc-proxy
...
2017-10-18 21:15:05 +0000 :: zmc-proxy :: END :: Waiting for service... :: 00:00:56 :: 00:01:58
2017-10-18 21:15:05 +0000 :: zmc-proxy :: BEGIN :: Publishing service... :: 00:00:00 :: 00:01:58
2017-10-18 21:15:05 +0000 :: zmc-proxy :: END :: Publishing service... :: 00:00:00 :: 00:01:58
2017-10-18 21:15:05 +0000 :: zmc-proxy :: SERVICE :: INITIALIZED :: :: 00:01:58
(^C to exit)
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
make down