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应用,进行检测。