ทีมคอนเทนเนอร์
Team-container คือชุดของคอนเทนเนอร์ที่ตั้งค่าเซิร์ฟเวอร์การทำงานร่วมกันของคุณเอง การตั้งค่านี้มีไว้เพื่อใช้ร่วมกับบทความนิตยสารในนิตยสาร c't ดู (https://www.heise.de/select/ct/2020/9/2007712573850503640) บทความนี้อยู่เบื้องหลังเพย์วอลล์ แต่การตั้งค่าจะทำงานได้โดยไม่มีบทความ
เครื่องมือในคอลเลกชันนี้
- เทรฟิก เราเตอร์
- เน็กซ์คลาวด์
- Rocket.แชท
- จิตสิมีต
- เปิดสไลด์
- ปล
เป้าหมาย ข้อกำหนดเบื้องต้น และสถาปัตยกรรม
เป้าหมายคือการจัดหาเซิร์ฟเวอร์การทำงานร่วมกันส่วนตัวสำหรับทีมขนาดเล็กถึงขนาดกลางที่ให้บริการที่จำเป็นในขณะที่ให้คุณควบคุมตำแหน่งที่จัดเก็บข้อมูลได้ บริการคือ:
- Nextcloud สำหรับการแชร์เอกสารและปฏิทิน
- Rocket.Chat สำหรับการแชทด้วยข้อความบนเบราว์เซอร์ที่มีการจัดระเบียบอย่างดี มีแอปสำหรับแพลตฟอร์มมือถือ
- Jitsi Meet สำหรับการประชุมทางวิดีโอผ่านเบราว์เซอร์ มีแอปสำหรับแพลตฟอร์มมือถือ
- Openlides สำหรับการจัดการการชุมนุมสำหรับสโมสรและองค์กร
- Plik เป็นระบบอัพโหลดไฟล์ชั่วคราวที่ปรับขนาดได้และเป็นมิตร (เช่น wetransfer)
สิ่งที่คุณต้องการก็คือ
- เซิร์ฟเวอร์ linux ซึ่งน่าจะใช้งาน Ubuntu 18.04 LTS หรือ Debian GNU/Linux อื่นที่ได้รับมา มีรายการความเข้ากันได้สำหรับผู้ให้บริการโฮสติ้งบางรายในวิกิ
- ชื่อโดเมน เช่น example.org และโดเมนย่อยสี่โดเมนที่ชี้ไปยังเซิร์ฟเวอร์ของคุณ เช่น www.example.org, cloud.example.org, chat.example.org และ video.example.org
- ประสบการณ์พื้นฐานกับเทอร์มินัล linux
ไม่จำเป็นต้องมีความรู้เกี่ยวกับเทคโนโลยีคอนเทนเนอร์หรือหัวข้อผู้ดูแลระบบ Linux ทั่วไปอื่นๆ
คอนเทนเนอร์แรก ((Kubernetes, Rancher, helm) ที่คุณติดตั้งประกอบด้วย Traefik Traefik กำหนดเส้นทางการรับส่งข้อมูลขาเข้าไปยังเว็บเซิร์ฟเวอร์ nginx หรือหนึ่งในสามคอนเทนเนอร์อื่นที่คุณจะติดตั้งในภายหลัง แต่ละคอนเทนเนอร์เหล่านั้นเรียกใช้อินสแตนซ์ของ Nextloud, Rocket Chat หรือ Jitsi Meet การตัดสินใจกำหนดเส้นทางจะขึ้นอยู่กับชื่อเซิร์ฟเวอร์ที่ระบุเมื่อตั้งค่าคอนเทนเนอร์
แผนงาน / มีส่วนร่วม
มีการปรับปรุงมากมายอยู่ในวาระการประชุมของเรา ดูบอร์ดโครงการที่ GitHub และสร้างปัญหาหรือประชาสัมพันธ์ได้ตามสบาย!
เริ่มต้นใช้งาน
- เตรียมเซิร์ฟเวอร์ด้วยเซิร์ฟเวอร์ 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" กรอกที่อยู่อีเมลของคุณ ตั้งค่าการผลิตเป็นจริง ป้อนชื่อเซิร์ฟเวอร์หลัก (เช่น www) และชื่อโดเมน
- ติดตั้ง Traefik เราเตอร์:
helm install setup team-setup --values values-setup.yaml
- รอสักครู่ - จนกระทั่ง https://yourserver.example.com ส่งคืนหน้าต้อนรับ nginx โดยใช้ใบรับรอง Let's Encrypt TLS ที่ถูกต้อง Traefik และ nginx ใช้งานได้แล้ว
ติดตั้ง Nextcloud
- เปิด "values-nextcloud.yaml" ป้อนชื่อเซิร์ฟเวอร์ (เช่น คลาวด์) ชื่อโดเมน (เช่น example.org) ชื่อของผู้ดูแลระบบ Nextcloud และรหัสผ่านเริ่มต้นสำหรับผู้ดูแลระบบ Nextcloud
- ติดตั้ง Nextcloud:
helm install nextcloud team-nextcloud --values values-nextcloud.yaml
- หลังจากนั้นไม่กี่นาที เซิร์ฟเวอร์ Nextcloud ของคุณก็จะเปิดใช้งานและทำงานภายใต้ https://cloud.example.org คุณสามารถเข้าสู่ระบบในฐานะผู้ดูแลระบบด้วยรหัสผ่านที่คุณระบุไว้ในขั้นตอนสุดท้าย ดำเนินการต่อและเพิ่มผู้ใช้ทั่วไป หรือ
ติดตั้ง Rocket.Chat
- เปิด "values-chat.yaml" ป้อนชื่อเซิร์ฟเวอร์ (เช่น แชท) ชื่อโดเมน (เช่น 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" ป้อนชื่อเซิร์ฟเวอร์ (เช่น วิดีโอ) และชื่อโดเมน (เช่น example.org)
- ติดตั้ง Jitsi Meet:
helm install video team-video --values values-video.yaml
- หลังจากนั้นไม่กี่นาที เซิร์ฟเวอร์วิดีโอแชท Jitsi Meet ของคุณจะเปิดใช้งานและทำงานภายใต้ https://video.example.org
- โปรดดูที่เว็บไซต์โครงการดังกล่าวข้างต้นสำหรับความช่วยเหลือในการใช้บริการ
ติดตั้ง Openslides (ซอฟต์แวร์สำหรับแอสเซมบลี)
- เปิด "values-openslides.yaml" กรอกชื่อเซิร์ฟเวอร์ (เช่น สโมสร) และชื่อโดเมน (เช่น example.org)
- ติดตั้ง Openslides:
helm install openslides team-openslides --values values-openslides.yaml
- หลังจากนั้นไม่กี่นาที เซิร์ฟเวอร์ Openlides ของคุณจะเปิดใช้งานและทำงานภายใต้ https://club.example.org
- โปรดดูที่เว็บไซต์โครงการดังกล่าวข้างต้นสำหรับความช่วยเหลือในการใช้บริการ
สิ่งที่ต้องทำ / ปัญหาที่ทราบ
- ไม่ทำงานกับ IPv6 (ปัญหาเกี่ยวกับการสร้างใบรับรอง)