在CentOS 8上安装EMLauncher的步骤如下:

在CentOS8上安装EMLauncher的步骤

这份手册是关于在CentOS8上安装KLab公司的Android/iOS测试应用发布工具EMLauncher的步骤手册。

※ 写这个操作手册时使用的CentOS版本是8.1.1911。

参考网站

    • KLab/emlauncher

 

    • EMLauncherをCentOS8にInstall

 

    • CentOSとPostfixを使って送信専用のメールサーバーを構築する方法

 

    PostfixのメールをGMail経由で送る

将EmLauncher安装

请使用root用户登录并执行以下操作。

1. 防火墙配置

    1. 打开80号端口。

防火墙命令—区域=公共—添加端口=80/tcp—永久
系统控制台重启防火墙

2. 安装所需软件包

    1. 添加EPEL仓库。

 

    1. dnf -y install epel-release

添加Remi仓库。
dnf -y install http://rpms.famillecollet.com/enterprise/remi-release-8.rpm

安装PHP 7.4。
dnf -y module install php:remi-7.4

安装其他软件包。
dnf -y install httpd mariadb-server memcached php-gd php-mbstring php-xml php-pecl-imagick php-pecl-memcached php-pecl-zip php-pdo php-mysqlnd git

安装Composer。
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

3. 部署代码

    1. 从GitHub克隆emlauncher。

cd /var/www/html
git clone https://github.com/KLab/emlauncher.git

初始化并更新子模块。

cd emlauncher
git submodule init && git submodule update

使用Composer安装相关包。

composer install

调整权限使Apache能够访问emlauncher。

chown -R apache:apache /var/www/html/emlauncher

4. Apache配置

因为CentOS8使用php-fpm,所以在.htaccess中写入会导致错误,因此需要将.htaccess中的设置注释掉,并将设置放在/etc/php.ini中。

    1. 修改emlauncher/web/.htaccess。

vim /var/www/html/emlauncher/web/.htaccess

将以下内容注释掉。

#php_flag short_open_tag On
#php_value memory_limit “4G”
#php_value upload_max_filesize “4G”
#php_value post_max_size “4G”
#php_value max_execution_time 300
#php_value max_input_time 300

修改/etc/php.ini。

vim /etc/php.ini

在.htaccess文件内,按以下方式设置注释掉的配置。

short_open_tag = On
max_execution_time = 300
max_input_time = 300
memory_limit = 4G
post_max_size = 4G
upload_max_filesize = 4G

编辑Apache的配置文件/etc/httpd/conf/httpd.conf。

vim /etc/httpd/conf/httpd.conf

进行以下修改。

SetEnv MFW_ENV ‘ec2’
<Directory “/var/www/html”>
Options FollowSymLinks
AllowOverride All
…省略…

启用httpd。

systemctl start httpd && systemctl enable httpd

5. 数据库设置

    1. 启用数据库。

systemctl start mariadb && systemctl enable mariadb

创建一个包含数据库用户名和密码的dbauth文件。

echo ’emlauncher:password’ > /var/www/html/dbauth

请替换上述命令中的password部分后执行。

根据dbauth密码在emlauncher/data/sql/database.sql中修改xxxxxxxx的部分。

vim /var/www/html/emlauncher/data/sql/database.sql

将emlauncher的数据库设置转移到MySQL中。

mysql -u root < /var/www/html/emlauncher/data/sql/database.sql
mysql -u root emlauncher < /var/www/html/emlauncher/data/sql/tables.sql

6. Memcache设置

    1. 启用Memcache。

systemctl start memcached && systemctl enable memcached

7. 配置bundletool以使用Android App Bundle

由于不需要用于重新签名APK的密钥库,因此将跳过此步骤。

如果必要的话,请参考KLab/emlauncher的README进行设置。

8. 配置

服务器环境配置文件

    1. 复制config/mfw_serverenv_config_sample.php文件,并将$serverenv_config[‘ec2’][‘database’][‘authfile’]更改为创建的dbauth文件的路径5。

cd /var/www/html/emlauncher/config
cp mfw_serverenv_config_sample.php mfw_serverenv_config.php
vim mfw_serverenv_config.php

更改dbauth文件路径。

‘authfile’ => ‘/var/www/html/dbauth’,

emlauncher_config.php 的配置

    1. 创建一个用于保存的目录。

mkdir /var/www/html/emlauncher-files

调整权限以使Apache能够访问保存目录。

chown -R apache:apache /var/www/html/emlauncher-files

复制config/emlauncher_config_sample.php,并根据自身的环境进行修改。

cd /var/www/html/emlauncher/config
cp emlauncher_config_sample.php emlauncher_config.php
vim emlauncher_config.php

进行以下修改。

‘storage_class’ => ‘LocalFile’,
‘path’ => ‘/var/www/html/emlauncher-files’,
‘url_prefix’ => ‘../../../emlauncher-files’,

完成

当在浏览器中显示EMLauncher的登录页面“ http://虚拟机地址(192.168.xxx.xxx)/emlauncher/web/login ”时,表示EMLauncher已成功安装。

用户注册的方法

    1. 从Mysql连接。密码是用dbauth设置的密码。

mysql -u emlauncher -p emlauncher

将用户邮箱注册到user_pass表中。

INSERT INTO user_pass (mail) VALUES (‘hoge@hoge.jp’);

* 请将hoge@hoge.jp替换为您自己的邮箱地址并执行。

退出Mysql。

exit

通过EMLauncher登录页面的“忘记密码”选项重置密码。

关于发送电子邮件

请安装并配置postfix以便EMLauncher可以使用sendmail发送电子邮件。

    1. 安装 postfix。

dnf -y install postfix

启用 postfix。

systemctl start postfix && systemctl enable postfix

在发送邮件时,如果出现”mb_send_mail失败”的错误提示,请禁用SELinux。

    1. 将SELinux暂时禁用。

setenforce 0

通过编辑SELinux配置文件永久禁用。

vim /etc/selinux/config

将SELINUX从enforcing更改为disable。
SELINUX=disable

如果发送了电子邮件但未能送达

由于Outbound Port 25封锁,导致我的问题。通过在Gmail上进行转发解决了这个问题。

    1. 请在转发用的Gmail帐户的安全设置页面上启用”允许访问不安全的应用程序”以便从Postfix进行转发。

在Postfix的配置文件中添加将信息转发到Gmail的设置。

打开/etc/postfix/main.cf文件。

在最后添加以下设置。

# Gmail
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain

设置转发用的Gmail帐户信息。

打开/etc/postfix/sasl_passwd文件。

用实际的电子邮件地址和密码替换以下内容。
[smtp.gmail.com]:587 hoge@gmail.com:password

从Gmail帐户信息文件创建数据库。

创建哈希表:postmap hash:/etc/postfix/sasl_passwd

删除包含Gmail帐户和密码的文件。

删除/etc/postfix/sasl_passwd文件。

重新启动Postfix。

使用以下命令重新启动:systemctl restart postfix