文章目录
前言
Monica
是在Github上 Star 18.7k
的项目,是一款开源的 联系人通讯录 辅助程序。
如果你觉得这个对你帮助不大,那么大可不必。
安装步骤
以 Ubuntu 22.04
安装为例,更多的信息可以参考官方文档:
依赖
-
sudo apt install apache2
也可以使用nginx
-
sudo apt install git
-
PHP 8.1+
sudo add-apt-repository ppa:ondrej/php apt install php8.2-fpm libapache2-mod-php8.2 php8.2-bcmath php8.2-cli php8.2-curl php8.2-common \ php8.2-fpm php8.2-gd php8.2-gmp php8.2-intl php-json php8.2-mbstring \ php8.2-mysql php8.2-opcache php8.2-redis php8.2-xml php8.2-zip
-
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php composer-setup.php sudo mv composer.phar /usr/local/bin/composer
-
sudo apt-get install -y nodejs #暂时只支持node 18.x,不支持 19.x
-
sudo npm install --global yarn
-
sudo apt install mysql-server
程序安装
1.克隆镜像
cd /var/www
git clone https://github.com/monicahq/monica.git
确保安装的是稳定版本或者指定版本,可以通过Github Release查询:
命令为:
cd /var/www/monica
# Get latest tags from GitHub
git fetch
# Clone the desired version
git checkout tags/v2.18.0
2.创建数据库
根据自己的情况创建数据库:
mysql -u root -p
CREATE DATABASE monica CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'monica'@'localhost' IDENTIFIED BY 'strongpassword';
GRANT ALL ON monica.* TO 'monica'@'localhost';
FLUSH PRIVILEGES;
exit
3.配置Monica
进入程序目录 cd /var/www/monica
:
-
创建环境变量
cp .env.example .env
-
根据自己需求更新变量
.env
,任意工具打开.env
文件进行修改-
设置数据库的账户和密码
DB_DATABASE=monica DB_USERNAME=homestead DB_PASSWORD=secret
-
配置邮件服务器
MAIL_MAILER=smtp MAIL_HOST=mailtrap.io #邮箱服务器地址 MAIL_PORT=2525 #邮箱服务器端口 MAIL_USERNAME= #邮箱账户 MAIL_PASSWORD= #邮箱密码 MAIL_ENCRYPTION= #邮箱加密方式 MAIL_FROM_ADDRESS= #邮箱地址 MAIL_FROM_NAME="Monica instance" #邮箱名称
-
设置
APP_ENV
为production
APP_ENV=production
如果
APP_ENV
设置为production
,那么要强制HTTPS,必须配置SSL证书了。
-
-
运行
composer install --no-interaction --no-dev
安装所有包 -
运行
yarn install
安装前端包,然后运行yarn run production
-
运行
php artisan key:generate
创建应用秘钥 -
运行
php artisan setup:production -v
迁移数据库和链接文件夹,输入yes
继续强烈建议:使用邮箱账号和密码安装
php artisan setup:production --email=your@email.com --password=yourpassword -v
,不然到时候你都不知道登录账号密码是什么。
4.创建cron任务
crontab -u www-data -e
在最后其中添加如下内容:
* * * * * php /var/www/monica/artisan schedule:run >> /dev/null 2>&1
然后运行 php artisan schedule:run
启动。
5.配置Apache2
-
提升目录权限
sudo chown -R www-data:www-data /var/www/monica sudo chmod -R 775 /var/www/monica/storage
-
开启Apache2 Rewrite模块
sudo a2enmod rewrite
-
配置网站
sudo vim /etc/apache2/sites-available/monica.conf
配置如下内容:
<VirtualHost *:80> ServerName **YOUR IP ADDRESS/DOMAIN** ServerAdmin webmaster@localhost DocumentRoot /var/www/monica/public <Directory /var/www/monica/public> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
-
启动
sudo a2ensite monica.conf sudo service apache2 restart
如果是HTTPS再配置ssl即可。
网站访问
正常显示,一次成功。
最后
说实话,在安装前,我觉得这个程序应该比较鸡肋,不是很看好,毕竟现在很多东西都一体化,手机上有各类软件都可以使用。
但是在实际使用后,还是觉得有点意思的,优点是界面简单,功能多样,给联系人添加各种标签、通话记录等等,还有WebDav,创建API外部连接访问等等。也可以在上面写日记,比较有意思。
缺点也是有的,配置稍显复杂,对新手不是很友好。后续如果要其他程序接入API的话,又是一项偏繁琐的过程。
我本来只是在本地测试一下,我觉得有必要上线测试一下,它应该可以给我一些惊喜。