简介
Zulip 是一个开源的团队协作工具,拥有独特的基于主题的线程功能,结合了电子邮件和聊天的优点,使远程工作更加高效和愉快。它是唯一设计用于实时和异步对话的现代团队聊天应用程序。其核心优势包括:
-
适用于大型企业、领先的开源项目以及数千家其他组织;
-
提供易读性强、经过深思熟虑测试并易于修改代码以及超过 150K 字节文档;
-
支持非编码贡献如报告问题、将 Zulip 转化为您所使用语言或给予反馈等多种方式。
准备
服务器:192.168.168.111
安装好docker ,docker compose
安装
1.创建目录
mkdir -p /opt/docker-zulip
进入目录
cd /opt/docker-zulip
2.编写docker-compse.yml
version: "2"
services:database:image: "zulip/zulip-postgresql:14"restart: unless-stoppedenvironment:POSTGRES_DB: "zulip"POSTGRES_USER: "zulip"# Note that you need to do a manual `ALTER ROLE` query if you# change this on a system after booting the postgres container# the first time on a host. Instructions are available in README.md.POSTGRES_PASSWORD: "REPLACE_WITH_SECURE_POSTGRES_PASSWORD"volumes:- "postgresql-14:/var/lib/postgresql/data:rw"memcached:image: "memcached:alpine"restart: unless-stoppedcommand:- "sh"- "-euc"- |echo 'mech_list: plain' > "$$SASL_CONF_PATH"echo "zulip@$$HOSTNAME:$$MEMCACHED_PASSWORD" > "$$MEMCACHED_SASL_PWDB"echo "zulip@localhost:$$MEMCACHED_PASSWORD" >> "$$MEMCACHED_SASL_PWDB"exec memcached -Senvironment:SASL_CONF_PATH: "/home/memcache/memcached.conf"MEMCACHED_SASL_PWDB: "/home/memcache/memcached-sasl-db"MEMCACHED_PASSWORD: "REPLACE_WITH_SECURE_MEMCACHED_PASSWORD"rabbitmq:image: "rabbitmq:3.7.7"restart: unless-stoppedenvironment:RABBITMQ_DEFAULT_USER: "zulip"RABBITMQ_DEFAULT_PASS: "REPLACE_WITH_SECURE_RABBITMQ_PASSWORD"volumes:- "rabbitmq:/var/lib/rabbitmq:rw"redis:image: "redis:alpine"restart: unless-stoppedcommand:- "sh"- "-euc"- |echo "requirepass '$$REDIS_PASSWORD'" > /etc/redis.confexec redis-server /etc/redis.confenvironment:REDIS_PASSWORD: "REPLACE_WITH_SECURE_REDIS_PASSWORD"volumes:- "redis:/data:rw"zulip:image: "zulip/docker-zulip:8.0-0"restart: unless-stoppedbuild:context: .args:# Change these if you want to build zulip from a different repo/branchZULIP_GIT_URL: https://github.com/zulip/zulip.gitZULIP_GIT_REF: "8.0"# Set this up if you plan to use your own CA certificate bundle for building# CUSTOM_CA_CERTIFICATES:ports:- "80:80"- "443:443"environment:DB_HOST: "database"DB_HOST_PORT: "5432"DB_USER: "zulip"SSL_CERTIFICATE_GENERATION: "self-signed"SETTING_MEMCACHED_LOCATION: "memcached:11211"SETTING_RABBITMQ_HOST: "rabbitmq"SETTING_REDIS_HOST: "redis"SECRETS_email_password: "123456789"# These should match RABBITMQ_DEFAULT_PASS, POSTGRES_PASSWORD,# MEMCACHED_PASSWORD, and REDIS_PASSWORD above.SECRETS_rabbitmq_password: "REPLACE_WITH_SECURE_RABBITMQ_PASSWORD"SECRETS_postgres_password: "REPLACE_WITH_SECURE_POSTGRES_PASSWORD"SECRETS_memcached_password: "REPLACE_WITH_SECURE_MEMCACHED_PASSWORD"SECRETS_redis_password: "REPLACE_WITH_SECURE_REDIS_PASSWORD"SECRETS_secret_key: "REPLACE_WITH_SECURE_SECRET_KEY"SETTING_EXTERNAL_HOST: "192.168.168.111"SETTING_ZULIP_ADMINISTRATOR: "192.168.168.111"SETTING_EMAIL_HOST: "" # e.g. smtp.example.comSETTING_EMAIL_HOST_USER: "wangwenzhe163@163.com"SETTING_EMAIL_PORT: "587"# It seems that the email server needs to use ssl or tls and can't be used without itSETTING_EMAIL_USE_SSL: "False"SETTING_EMAIL_USE_TLS: "True"ZULIP_AUTH_BACKENDS: "EmailAuthBackend"# Uncomment this when configuring the mobile push notifications service# SETTING_PUSH_NOTIFICATION_BOUNCER_URL: 'https://push.zulipchat.com'volumes:- "zulip:/data:rw"ulimits:nofile:soft: 1000000hard: 1048576
volumes:zulip:postgresql-14:rabbitmq:redis:
3.启动
docker compose up -d
访问
浏览器打开
192.168.168.111:10013