在CentOS 7/CentOS 8上安装EGROUPWATE CE

时间:2020-02-23 14:39:14  来源:igfitidea点击:

EGROUPWARE是在PHP中编写的基于Web的组件服务器。
EGROUPWARE是为,研究机构和俱乐部和任何其他适用用例创建的开源软件。
在本教程中,我们将研究如何在CentOS 7/CentOS 8 Linux系统上安装EgroupWare Community Edition。

Ubuntu安装:在Ubuntu 18.04 Linux上安装Egroupware CE

EGROUPWATE基于PHP,JS和HTML,软件在GNU通用公共许可证(GPL)版本中分发。
通过其本机Web-Interfile,允许与平台无关的访问或者使用不同的访问软件支持使用Caldav/CardDAV或者ActiveSync协议的客户端。

eGroupware的功能

文件管理器 - 提供详细的权限管理,存档选项和对外部合作伙伴的文件的访问权限使其成为Easy.Calendar - 计划会议,假期和集团约会在线.Web admin - 维护整个平台恐怖客户端的许多需要的工具和首选项 - 集成的电子邮件客户端与日历或者Infolog.Tasks和Projects(如Calendar或者Infolog)的其他模块完美地连接 - 有效地管理整个团队的信息和职责。

如果我们不确定要使用的版本,请检查EGROUPWARE定价页面有关功能比较的更多详细信息。

在CentOS 8/CentOS 7 Linux上安装Egroupware

我们可以直接抓取二进制包,并从二进制包中安装Centos 7/Rhel 7上的EGROUPWARE。
另一个选项正在手动添加EGROUPWARE存储库,并从存储库中安装eGroupware。
我更喜欢后者,因为它可以缓解更新。

第1步:添加EGROUPWARE存储库

通过在终端中运行下面的命令来添加存储库。

--- CentOS 7 --
sudo yum -y install wget
sudo wget https://download.opensuse.org/repositories/server:eGroupWare/CentOS_7/server:eGroupWare.repo -O  /etc/yum.repos.d/eGroupWare.repo
--- CentOS 8 --
sudo yum -y install wget
sudo wget https://download.opensuse.org/repositories/server:eGroupWare/CentOS_8/server:eGroupWare.repo -O  /etc/yum.repos.d/eGroupWare.repo

我们可以使用CAT命令查看存储库文件内容。

$cat /etc/yum.repos.d/eGroupWare.repo
[server_eGroupWare]
name=EGroupware (CentOS_7)
type=rpm-md
baseurl=http://download.opensuse.org/repositories/server:/eGroupWare/CentOS_7/
gpgcheck=1
gpgkey=http://download.opensuse.org/repositories/server:/eGroupWare/CentOS_7/repodata/repomd.xml.key
enabled=1

第2步:安装MariaDB数据库服务器

添加MariaDB存储库:

CentOS 7:

cat <<EOF | sudo tee /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

CentOS 8:

sudo tee /etc/yum.repos.d/MariaDB.repo<<EOF 
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos8-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

安装和启动MariaDB服务:

CentOS 7:

sudo yum -y install MariaDB-server MariaDB-client
sudo systemctl enable --now mariadb

CentOS 8:

sudo dnf install boost-program-options
sudo dnf install MariaDB-server MariaDB-client --disablerepo=AppStream 
sudo systemctl enable --now mariadb

第3步:在CentOS 8/CentOS 7上安装Egroupware

对于CentOS 8,从Docker CE存储库手动安装Docker:

只有CentOS 8:

sudo curl  https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo
sudo dnf -y  install docker-ce --nobest
sudo systemctl enable --now docker
sudo usermod -aG docker $USER

RHEL/CentOS 8使用NFTABLE而不是IPTABLES,它不适用于当前Docker-CE。
我们需要通过编辑配置防火墙以使用iptables:

$sudo vi  /etc/firewalld/firewalld.conf
#FirewallBackend=nftables
FirewallBackend=iptables
$sudo systemctl restart firewalld

添加存储库后,继续在CentOS 7/Rhel 7 Linux机器上安装EgroupWare。

sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
sudo yum install egroupware-docker egroupware-collabora-key egroupware-rocketchat

通过接受使用y键给出的提示来启动安装。

Dependencies Resolved
=======================================================================================================================================================
 Package                                           Arch              Version                                        Repository                    Size
=======================================================================================================================================================
Installing:
 egroupware-docker                                 noarch            19.1.20170409-1.1                              server_eGroupWare            296 k
Installing for dependencies:
 PyYAML                                            x86_64            3.10-11.el7                                    base                         153 k
 apr                                               x86_64            1.4.8-5.el7                                    base                         103 k
 apr-util                                          x86_64            1.5.2-6.el7                                    base                          92 k
 atomic-registries                                 x86_64            1:1.22.1-29.gitb507039.el7                     extras                        35 k
 audit-libs-python                                 x86_64            2.8.5-4.el7                                    base                          76 k
 centos-logos                                      noarch            70.0.6-3.el7.centos                            base                          21 M
 checkpolicy                                       x86_64            2.5-8.el7                                      base                         295 k
 container-selinux                                 noarch            2:2.107-3.el7                                  extras                        39 k
 container-storage-setup                           noarch            0.11.0-2.git5eaf76c.el7                        extras                        35 k
 containers-common                                 x86_64            1:0.1.37-3.el7.centos                          extras                        21 k
 device-mapper-event                               x86_64            7:1.02.158-2.el7_7.2                           updates                      190 k
 device-mapper-event-libs                          x86_64            7:1.02.158-2.el7_7.2                           updates                      189 k
 device-mapper-persistent-data                     x86_64            0.8.5-1.el7                                    base                         423 k
 docker                                            x86_64            2:1.13.1-109.gitcccb291.el7.centos             extras                        18 M
 docker-client                                     x86_64            2:1.13.1-109.gitcccb291.el7.centos             extras                       3.9 M
 docker-common                                     x86_64            2:1.13.1-109.gitcccb291.el7.centos             extras                        98 k
 docker-compose                                    x86_64            1.24.1-6.1                                     server_eGroupWare            4.0 k
 httpd                                             x86_64            2.4.6-90.el7.centos                            base                         2.7 M
 httpd-tools                                       x86_64            2.4.6-90.el7.centos                            base                          91 k
 libaio                                            x86_64            0.3.109-13.el7                                 base                          24 k
 libcgroup                                         x86_64            0.41-21.el7                                    base                          66 k
 libsemanage-python                                x86_64            2.5-14.el7                                     base                         113 k
 libyaml                                           x86_64            0.1.4-11.el7_0                                 base                          55 k
 lvm2                                              x86_64            7:2.02.185-2.el7_7.2                           updates                      1.3 M
 lvm2-libs                                         x86_64            7:2.02.185-2.el7_7.2                           updates                      1.1 M
 mailcap                                           noarch            2.1.41-2.el7                                   base                          31 k
 mod_ssl                                           x86_64            1:2.4.6-90.el7.centos                          base                         112 k
 oci-register-machine                              x86_64            1:0-6.git2b44233.el7                           extras                       1.1 M
 oci-systemd-hook                                  x86_64            1:0.2.0-1.git05e6923.el7_6                     extras                        34 k
 oci-umount                                        x86_64            2:2.5-3.el7                                    extras                        33 k
 policycoreutils-python                            x86_64            2.5-33.el7                                     base                         457 k
 python-IPy                                        noarch            0.75-6.el7                                     base                          32 k
 python-backports                                  x86_64            1.0-8.el7                                      base                         5.8 k
 python-backports-ssl_match_hostname               noarch            3.5.0.1-1.el7                                  base                          13 k
 python-ipaddress                                  noarch            1.0.16-2.el7                                   base                          34 k
 python-pytoml                                     noarch            0.1.14-1.git7dea353.el7                        extras                        18 k
 python-setuptools                                 noarch            0.9.8-7.el7                                    base                         397 k
 setools-libs                                      x86_64            3.3.8-4.el7                                    base                         620 k
 subscription-manager-rhsm-certificates            x86_64            1.24.13-4.el7.centos                           updates                      228 k
 yajl                                              x86_64            2.0.4-4.el7                                    base                          39 k
Updating for dependencies:
 audit                                             x86_64            2.8.5-4.el7                                    base                         256 k
 audit-libs                                        x86_64            2.8.5-4.el7                                    base                         102 k
 device-mapper                                     x86_64            7:1.02.158-2.el7_7.2                           updates                      294 k
 device-mapper-libs                                x86_64            7:1.02.158-2.el7_7.2                           updates                      322 k
 policycoreutils                                   x86_64            2.5-33.el7                                     base                         916 k
Transaction Summary
=======================================================================================================================================================
Install  1 Package  (+40 Dependent packages)
Upgrade             (  5 Dependent packages)
Total download size: 55 M
Is this ok [y/d/N]: y

我们应该看到已启动的容器:

....
Digest: sha256:8616a861a5c769b7fe633625a4d5a4f76ae5a54d1d04874dcef827644c136684
Status: Downloaded newer image for docker.io/docker/compose:1.24.1
Creating network "egroupware-rocketchat_default" with the default driver
Creating volume "egroupware-rocketchat_mongo" with default driver
Pulling mongo (mongo:4.0)...
Trying to pull repository docker.io/library/mongo ... 
4.0: Pulling from docker.io/library/mongo
Digest: sha256:53fcee17f21474d55dcd62e7acaa011be69a548f26cb643e06b39966159e7269
Status: Downloaded newer image for docker.io/mongo:4.0
Pulling rocketchat (rocketchat/rocket.chat:latest)...
Trying to pull repository docker.io/rocketchat/rocket.chat ... 
latest: Pulling from docker.io/rocketchat/rocket.chat
Digest: sha256:6808869e4751d95273d468da5efd1262a01f3686bf8d2e8a6603dc6eb995295b
Status: Downloaded newer image for docker.io/rocketchat/rocket.chat:latest
Creating rocketchat-mongo ... done
Creating egroupware-rocketchat_mongo-init-replica_1 ... done
Creating rocketchat                                 ... done
  Installing : egroupware-collabora-key-1.3.20190911-4.1.noarch        
.....
Status: Downloaded newer image for docker.io/containrrr/watchtower:latest
Creating egroupware            ... done
Creating egroupware-watchtower ... done
Creating egroupware-nginx      ... done
....

检查运行容器:

$sudo docker ps
CONTAINER ID        IMAGE                                     COMMAND                  CREATED             STATUS              PORTS                      NAMES
db333abf8c4c        nginx:stable-alpine                       "nginx -g 'daemon ..."   5 minutes ago       Up 5 minutes        127.0.0.1:8080->80/tcp     egroupware-nginx
04fd31decde5        egroupware/egroupware:latest              "/entrypoint.sh ph..."   5 minutes ago       Up 5 minutes        9000/tcp                   egroupware
06db3adb5b2f        containrrr/watchtower                     "/watchtower --sch..."   5 minutes ago       Up 5 minutes                                   egroupware-watchtower
177424aefb2a        quay.io/egroupware/collabora-key:stable   "/bin/sh -c 'bash ..."   6 minutes ago       Up 5 minutes        127.0.0.1:9980->9980/tcp   collabora-key
c2da091e13f0        rocketchat/rocket.chat:latest             "bash -c 'for i in..."   6 minutes ago       Up 6 minutes        127.0.0.1:3000->3000/tcp   rocketchat
8599b69cde22        mongo:4.0                                 "docker-entrypoint..."   6 minutes ago       Up 6 minutes        27017/tcp                  rocketchat-mongo

第4步:访问EGROUPWARE CE仪表板

既然容器已启动,请访问go http://example.org/egroupware页面以使用凭据登录仪表板。

在CentOS 7/CentOS 8上安装eGroupware后获取登录凭据:

$sudo  cat /var/lib/egroupware/egroupware-docker-install.log 
Fix APC(u) configuration, set apc.shm_size=128M in /etc/php/7.3/cli/conf.d/20-apcu.ini
Timezones updated to version 2.2019c (546 records updated).
Timezones aliases updated to version 2017-04-09 09:54:19 (87 records updated).
You might need to clear the cache for changes to be visiable: Admin >> Clear cache!
EGroupware successful installed
===============================
Please note the following user names and passwords:
Setup username:      admin
      password:      EEaw?Tyws3MIJz-I
EGroupware username: sysop
           password: LEzs;itjm(HPxLgH
You can log into EGroupware by pointing your browser to http://localhost/egroupware/
Please replace localhost with the appropriate hostname, if you connect remote.
*** Database has no root password set, please fix that immediatly: mysqladmin -u root password NEWPASSWORD

然后在登录页面上使用它们。

使用Docker编写运行输出中显示的凭据以登录。

我们可以开始管理EGROUPWARE并配置第三方集成。

设置页面可在http://example.org/egroupware/setup中访问

第5步:停止Docker服务

我们可以随时通过更改为Docker Compose目录并运行以下命令随时停止容器。

# cd /etc/egroupware-docker/
# docker-compose stop
Stopping egroupware-nginx      ... done
Stopping egroupware            ... done
Stopping egroupware-watchtower ... done