团队容器
Team-container 是设置您自己的协作服务器的容器集合。此设置旨在与 c't 杂志中的杂志文章结合使用。请参阅(https://www.heise.de/select/ct/2020/9/2007712573850503640)。该文章位于付费专区后面,但该设置无需该文章即可运行。
此集合中的工具
- Træfik路由器
- 下一云
- 火箭聊天
- 吉西见面会
- 打开幻灯片
- 普利克
目标、先决条件和架构
目标是为中小型团队提供私有协作服务器,提供基本服务,同时让您控制数据的存储位置。服务内容为:
- Nextcloud用于共享文档和日历
- Rocket.Chat用于组织良好的基于浏览器的文本聊天。提供适用于移动平台的应用程序。
- Jitsi Meet用于基于浏览器的视频会议。提供适用于移动平台的应用程序。
- 用于管理俱乐部和组织集会的Openslides
- Plik是一个可扩展且友好的临时文件上传系统(如 wetransfer)。
你所需要的只是
- Linux 服务器,最好运行 Ubuntu 18.04 LTS 或其他 Debian GNU/Linux 衍生版本。 wiki 中有一些托管提供商的兼容性列表。
- 一个域名,例如 example.org 和四个指向您服务器的子域,即 www.example.org、cloud.example.org、chat.example.org 和 video.example.org
- Linux 终端的基本经验
不需要了解容器技术或其他典型的 Linux 管理主题。
您安装的第一个容器((Kubernetes、Rancher、helm)包含 Traefik。Traefik 将传入流量路由到 Web 服务器 nginx 或您随后将安装的其他三个容器之一。每个容器都运行 Nextloud、Rocket 的实例。聊天或 Jitsi Meet 路由决策基于设置容器时指定的服务器名称。所有四个服务器应具有相同的域名。
路线图/贡献
我们的议程上有很多改进。查看 GitHub 上的项目板并随意创建问题或 PR!
入门
- 准备一台具有当前版本Linux服务器的服务器(使用Ubuntu Server 18.04 LTS进行测试)
- 为您的服务器设置四个 DNS 条目(例如 www.example.org、cloud.example.org、chat.example.org、video.example.org)
- 克隆此存储库:
git clone https://github.com/ct-open-source/team-container
- 导航到文件夹 team-container
- 运行
sudo install.sh
- 打开“values-setup.yaml”。输入您的电子邮件地址,将生产设置为true,输入主服务器名称(例如www)和域名。
- 安装 Traefik,路由器:
helm install setup team-setup --values values-setup.yaml
- 等待几分钟 - 直到 https://yourserver.example.com 使用有效的 Let's Encrypt TLS 证书返回 nginx 欢迎页面。 Traefik 和 nginx 现已正常运行。
安装Nextcloud
- 打开“values-nextcloud.yaml”。输入服务器名称(例如cloud)、域名(例如example.org)、Nextcloud 管理员的名称以及Nextcloud 管理员的初始密码。
- 安装 Nextcloud:
helm install nextcloud team-nextcloud --values values-nextcloud.yaml
- 几分钟后,您自己的 Nextcloud 服务器将在 https://cloud.example.org 下启动并运行。您可以使用上一步中提供的密码以管理员身份登录。继续并添加常规用户。或者
安装 Rocket.Chat
- 打开“values-chat.yaml”。输入服务器名称(例如chat)、域名(例如example.org)、Rocket.Chat 管理员的名称、Rocket.Chat 管理员的初始密码及其电子邮件地址。
- 安装 Rocket.Chat:
helm install chat team-chat --values values-chat.yaml
- 几分钟后,您自己的 Rocket.Chat 服务器将在 https://chat.example.org 下启动并运行。您可以使用上一步中提供的密码以管理员身份登录。继续并添加常规用户。
安装 Jitsi Meet
- 打开“values-video.yaml”。输入服务器名称(例如 video)和域名(例如 example.org)
- 安装 Jitsi Meet:
helm install video team-video --values values-video.yaml
- 几分钟后,您自己的 Jitsi Meet 视频聊天服务器将在 https://video.example.org 下启动并运行。
- 请参阅上述项目网站以获取有关使用服务的帮助。
安装 Openslides(用于装配的软件)
- 打开“values-openslides.yaml”。输入服务器名称(例如club)和域名(例如example.org)
- 安装 Openslides:
helm install openslides team-openslides --values values-openslides.yaml
- 几分钟后,您自己的 Openslides 服务器将在 https://club.example.org 下启动并运行。
- 请参阅上述项目网站以获取有关使用服务的帮助。
待办事项/已知问题