MyBalance安装文档

序言

因为编写程序时选用的底层框架为 Laravel ,对运行环境要求十分严格,并且需要安装众多的依赖,所以为了简化安装步骤并降低安装难度,将使用Docker容器化技术来安装程序。如果对PHP运行环境配置十分了解,亦可自行配置并安装依赖。

该程序在Linux平台上开发、运行和测试,未对Windows平台进行过兼容性开发,也不曾在该平台上测试过。若需在此平台上运行,推荐使用Docker虚拟化容器技术,具体步骤亦可参照本文。

该程序已在以下的系统成功安装并运行:

  • Ubuntu 16.04
  • Deepin 15.9
  • Manjaro 18.0.3

本文将以Ubuntu为例介绍该程序的安装。

硬件要求

  • 内存 ≥ 2G (如果不够可创建SWAP分区)
  • CPU ≥ 1核
  • 硬盘 ≥ 10G

详细步骤

1. 安装依赖程序

连接至远程服务器,输入以下命令,将会使用Ubuntu默认的包管理器(APT)安装Git、Docker、Docker Compose、Composer等程序,并自动将当前用户加入docker组。

1
2
3
4
5
6
7
8
9
sudo apt-get update
sudo apt-get install git docker.io php7.0-cli
sudo groupadd docker
sudo usermod -aG docker $USER
sudo curl -L 'https://get.daocloud.io/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)' -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
sudo mv composer.phar /usr/local/bin/composer

2. 使用加速源(可选)

因为Docker和Composer的默认镜像源都在国外,可用性较差,在国内安装本程序时应修改Docker和Composer的镜像源为国内的加速源。请在远程服务器上输入以下命令:

1
2
curl -sSL https://get.daocloud.io/daotools/set\_mirror.sh | sh -s http://f1361db2.m.daocloud.io
composer config -g repo.packagist composer https://packagist.laravel-china.org

3. 上传程序至服务器

你可以将程序源代码使用FTP或SFTP的方式上传到服务器上,也可以使用Git直接克隆本程序的最新源代码。若使用Git克隆源代码,请在远程服务器上执行:

1
git clone https://git.dev.tencent.com/Seth24/MyBalance.git

若你选择手动上传源代码,请不要忘记执行以下命令:

1
2
3
rm -rf laradock
git init
git submodule add https://github.com/Laradock/laradock.git

4. 安装程序依赖

进入程序主目录并执行以下命令,将会使用Composer安装程序的依赖,并使用Git克隆项目容器运行环境的配置Laradock

1
2
3
composer install --ignore-platform-reqs
git submodule init
git submodule update

5. 配置并安装程序

进入项目下的laradock目录,输入以下命令复制运行环境的配置文件:

1
cp env-example .env

接下来请编辑.env 文件,进行个性化修改。保存文件后,输入以下命令,启动并进入程序的运行容器

1
2
3
4
docker-compose up -d nginx mariadb
docker-compose exec workspace bash
cp .env.example .env
php artisan key:generate

编辑.env 文件并按实际情况进行配置。在这里数据库的地址是mariadb,端口为3306,默认账号和数据库为default,密码为secret。保存好文件后请执行以下命令进行程序数据库迁移(格式化):

1
php artisan migrate

6. 创建管理员账户

请在项目的运行容器中执行以下命令以进入管理员创建向导,根据提示创建管理员账号:

1
php artisan create-admin

注:为保护账号安全,在输入密码时密码将被隐藏

至此,安装就已经结束了。

参见

  1. 《Laravel 5.5 中文文档》安装
  2. 《Laravel 5.5 中文文档》部署
  3. 《Laradock 中文文档》

AWS踩坑记

我还顽强活着 …

已经好久没来这里了,博客里的草都快长到人高了,所以导致了一些不好的事情发生,经过一系列折腾后终于把博客变成了现在的样子。

我的博客一直是运行在AWS上,靠免费计划苟活着,这是最近发生的一切的开端。今年五月份起,我莫名其妙地收到了来自AWS的账单,起初没有太在意就没有去管它,直到六月底AWS因为账单未结清停掉了我的账户,我的博客和梯子被迫关闭了。在后来几天里,我花了大价钱去开一张虚拟信用卡,以高额的汇率支付完所有账单和手续费后,我的博客才得以恢复。现在算算,当初花的费用已经远超过了购买一台同时长VPS的费用,这倒是印证了一句话:免费的就是最贵的。

在耍了一次流氓以后,AWS就显露了它的原形,给我发来的账单里面的收费条目越来越多。我有些不耐烦,暑假里索性新开了一个账号并将我所有的服务迁移过去,老账号任其自生自灭,我的博客就这样撑过了暑假。

就在昨天我来博客除草,然而怎么也创建不了文章,界面也是稀奇古怪的:

Wordpress Boom..

一番谷歌百度后无果,打开博客的数据库一看差点吓到地上,所有表的键、约束、默认值都没有了,数据像被八国联军轰炸了一团糟。问题出在迁移上,我是使用AWS提供的关系型数据库迁移工具DMS进行迁移的,这坑货建表时居然不会复制源表的键,这样就算了,源表与目标表结构不同还能把数据硬生生灌进去,这波操作骚的一批。

Database Boom…

新创建了一个博客,再用Navicat的结构同步修复完数据库,可算是能正常写文章了。炸妈AWS,看我以后还用你吗hhhh

最后附一张AWS发来的账单,AWS会不会学迪士尼发律师函??

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×