contenedor de equipo
Team-container es una colección de contenedores que configuran su propio servidor de colaboración. Esta configuración está destinada a usarse junto con un artículo de revista en la revista c't. Ver (https://www.heise.de/select/ct/2020/9/2007712573850503640). El artículo está detrás de un muro de pago, pero la configuración funciona sin el artículo.
Herramientas en esta colección
- Enrutador Træfik
- Siguiente nube
- Cohete.Chat
- Jitsi se encuentra
- Diapositivas abiertas
- Plik
Objetivo, requisitos previos y arquitectura
El objetivo es proporcionar un servidor de colaboración privado para un equipo pequeño y mediano que brinde servicios esenciales y le deje a usted el control de dónde se almacenan los datos. Los servicios son:
- Nextcloud para compartir documentos y calendarios
- Rocket.Chat para un chat de texto basado en navegador bien organizado. Hay aplicaciones para plataformas móviles disponibles.
- Jitsi Meet para videoconferencias basadas en navegador. Hay aplicaciones para plataformas móviles disponibles.
- Openslides para gestión de asambleas para clubes y organizaciones
- Plik es un sistema de carga de archivos temporales escalable y amigable (como wetransfer).
Todo lo que necesitas es
- Un servidor Linux, preferiblemente con Ubuntu 18.04 LTS u otro derivado de Debian GNU/Linux. Hay una lista de compatibilidad para algunos proveedores de alojamiento en la wiki.
- Un nombre de dominio, por ejemplo, ejemplo.org y cuatro subdominios que apuntan a su servidor, es decir, www.ejemplo.org, nube.ejemplo.org, chat.ejemplo.org y video.ejemplo.org
- Experiencia básica con la terminal Linux.
No se requieren conocimientos de tecnología de contenedores u otros temas típicos de administración de Linux.
El primer contenedor ((Kubernetes, Rancher, helm) que instale contiene Traefik. Traefik enruta el tráfico entrante al servidor web nginx o a uno de los otros tres contenedores que instalará posteriormente. Cada uno de esos contenedores ejecuta una instancia de Nextloud, Rocket. Chat o Jitsi Meet La decisión de enrutamiento se basa en el nombre del servidor especificado al configurar los contenedores. Los cuatro servidores deben tener el mismo nombre de dominio.
Hoja de ruta / Contribuir
Muchas mejoras están en nuestra agenda. ¡Eche un vistazo al tablero de proyectos en GitHub y siéntase libre de crear un problema o una PR!
Empezando
- preparar un servidor con una versión actual del servidor Linux (probado con Ubuntu Server 18.04 LTS)
- configure cuatro entradas DNS para su servidor (por ejemplo, www.example.org, cloud.example.org, chat.example.org, video.example.org)
- clonar este repositorio:
git clone https://github.com/ct-open-source/team-container
- navegar a la carpeta equipo-contenedor
- ejecuta
sudo install.sh
- abra "valores-setup.yaml". Ingrese su dirección de correo electrónico, configure producción en verdadero, ingrese el nombre del servidor principal (por ejemplo, www) y el nombre de dominio.
- instale Traefik, el enrutador:
helm install setup team-setup --values values-setup.yaml
- espere unos minutos, hasta que https://yourserver.example.com devuelva la página de bienvenida de nginx utilizando un certificado TLS Let's Encrypt válido. Traefik y nginx ahora son funcionales.
Instalar Nextcloud
- abra "valores-nextcloud.yaml". Ingrese el nombre del servidor (por ejemplo, nube), el nombre de dominio (por ejemplo, ejemplo.org), un nombre para el administrador de Nextcloud y la contraseña inicial para el administrador de Nextcloud.
- instalar Nextcloud:
helm install nextcloud team-nextcloud --values values-nextcloud.yaml
- Después de unos minutos, su propio servidor Nextcloud estará funcionando en https://cloud.example.org. Puede iniciar sesión como administrador con la contraseña que proporcionó en el último paso. Continúe y agregue usuarios habituales. O
Instalar Rocket.Chat
- abra "valores-chat.yaml". Ingrese el nombre del servidor (por ejemplo, chat), el nombre de dominio (por ejemplo, ejemplo.org), un nombre para el administrador de Rocket.Chat, la contraseña inicial para el administrador de Rocket.Chat y su dirección de correo electrónico.
- instalar Rocket.Chat:
helm install chat team-chat --values values-chat.yaml
- Después de unos minutos, su propio servidor Rocket.Chat estará funcionando en https://chat.example.org. Puede iniciar sesión como administrador con la contraseña que proporcionó en el último paso. Continúe y agregue usuarios habituales.
Instalar Jitsi Meet
- abra "valores-video.yaml". Ingrese el nombre del servidor (por ejemplo, video) y el nombre de dominio (por ejemplo, ejemplo.org)
- instalar Jitsi Meet:
helm install video team-video --values values-video.yaml
- Después de unos minutos, su propio servidor de video chat Jitsi Meet estará funcionando en https://video.example.org.
- Consulte los sitios web del proyecto mencionados anteriormente para obtener ayuda sobre el uso de los servicios.
Instalar Openslides (software para montajes)
- abra "valores-openslides.yaml". Ingrese el nombre del servidor (por ejemplo, club) y el nombre de dominio (por ejemplo, ejemplo.org)
- instalar Openslides:
helm install openslides team-openslides --values values-openslides.yaml
- Después de unos minutos, su propio servidor Openslides estará funcionando en https://club.example.org.
- Consulte los sitios web del proyecto mencionados anteriormente para obtener ayuda sobre el uso de los servicios.
Tareas pendientes / Problemas conocidos
- no funciona con IPv6 (problemas con la generación de certificados)