URLOS实战进阶—制作萤火小程序商城应用
最近更新时间:2019-06-12 15:10:45
1、使用ssh登录宿主主机,创建Dockerfile文件并填充以下内容
FROM urlos4/php:5.6-fpm-alpine RUN apk add git \ && cd /home && git clone https://gitee.com/xany/bestshop-php.git \ && mv bestshop-php yoshop \ && tar czf yoshop.tar.gz yoshop \ && rm -rf yoshop/ \ && apk del git
2、执行以下命令,生成docker镜像
docker build -t urlos4/shop:yoshop-latest-fpm-alpine .
3、运行镜像并且进入容器
docker run -itd --name yoshop001 -p 8088:80 urlos4/shop:yoshop-latest-fpm-alpine docker exec -it yoshop001 sh cd /home tar czf yoshop.tar.gz mv yoshop /var/www/html/ # 将程序剪切到网站目录
4、配置niginx虚拟站点
vi /etc/nginx/conf.d/default.conf
default.conf配置内容如下:
server {
listen 80 default_server;
root /var/www/html/yoshop/web/;
index index.php index.html;
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
location ~ \.(php|phtml)$ {
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
}
5、启动nginx、php程序。
test -d /run/nginx || mkdir /run/nginx nginx php-fpm -D
6、通过浏览器访问站点,http://ip:8088/
若访问站点出现错误:mkdir(): Permission denied,请执行如下命令:
chmod -R 777 /var/www/html/yoshop/
7、测试无误后,上传镜像到docker云端。
docker login # 已登录,可忽略 docker push urlos4/shop:yoshop-latest-fpm-alpine # 将本地镜像推送到docker云
登录URLOS,添加镜像。
点击提交。
8、制作yoshop应用。如图:
点击提交。
9、设置yoshop程序的数据库配置模板文件,如图:
<?php
// 数据库配置
$config = [
'host' => '{w:dbHost:w}',
'database' => '{w:dbName:w}',
'username' => '{w:dbUser:w}',
'password' => '{w:dbPassword:w}',
'port' => '{w:dbPort:w}',
'charset' => 'utf8',
];
return [
// 数据库类型
'type' => 'mysql',
// 服务器地址
'hostname' => $config['host'],
// 数据库名
'database' => $config['database'],
// 用户名
'username' => $config['username'],
// 密码
'password' => $config['password'],
// 端口
'hostport' => $config['port'],
// 连接dsn
'dsn' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => $config['charset'],
// 数据库表前缀
'prefix' => 'yoshop_',
// 数据库调试模式
'debug' => true,
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0,
// 数据库读写是否分离 主从式有效
'rw_separate' => false,
// 读写分离后 主服务器数量
'master_num' => 1,
// 指定从服务器序号
'slave_no' => '',
// 是否严格检查字段是否存在
'fields_strict' => true,
// 数据集返回类型
'resultset_type' => 'collection',
// 自动写入时间戳字段
'auto_timestamp' => true,
// 时间字段取出后的默认时间格式
'datetime_format' => 'Y-m-d H:i:s',
// 是否需要进行SQL性能分析
'sql_explain' => false,
];
10、设置nginx站点配置,如图:
11、添加扩展变量,如图:
点击提交。
12、修改数据库字符集扩展变量,如图:
13、安装yoshop应用,进行检测。
























