使用mineadmin
# 后端
使用docker运行后端服务
先在docker中创建一个MySQL的数据库
docker run -d --name mysql_for_mineadmin --restart=always -p 3309:3306 -e MYSQL_USER='ComplexUser123' -e MYSQL_PASSWORD='G7h#9kLmP2@x' -e MYSQL_ROOT_PASSWORD='RootPass#8kLmP2@x' mysql:5.7
# 原来成功的脚本
# 成功安装一个congyou项目
docker run --name congyou -p 9501:9501 -it -v E:/docker/congyou-smart-elderly-care-admin:/var/www/congyou phpswoole/swoole:5.0
# 成功安装一个官方镜像文件
docker run --name congyou -p 9501:9501 -it -v d:/congyou/codefile/congyou-smart-elderly-care-admin:/var/www/congyou hyperf/hyperf:8.2-alpine-v3.18-swoole
# 我新项目mineadmin的启动脚本
docker run --name my_mineadmin --restart=always -p 9509:9501 -it -v d:/congyou/dockerfile/mineadmin:/var/www/my_mineadmin hyperf/hyperf:8.1-alpine-v3.18-swoole-v5.1
# 运行脚本后使用cmd命令行进入服务器
# 查看当前运行的docker状态
docker ps
# 进入bash
docker exec -it my_mineadmin /bin/bash
# 进入容器目录
cd var/www/my_mineadmin
# 启动服务器
php bin/hyperf.php start
# 查看是否成功
访问网页127.0.0.1:9509
# 重装vender
composer install -vvv
# 数据表迁移
php bin/hyperf.php migrate
# 数据填充
php bin/hyperf.php db:seed
# 前端
使用npm安装前端服务
# 前端依赖库的安装
pnpm i
# 启动本地开发服务
pnpm dev
# 安装中的错误
这个错误 1044 - Access denied for user 'ComplexUser123'@'%' to database 'mineadmin' 表示用户没有访问 mineadmin 数据库的权限
# 解决办法
docker exec -it mysql_for_mineadmin mysql -u root -p
输入root密码 虽然看不见输入密码提示符,但是也要继续输入.
RootPass#8kLmP2@x
-- 创建数据库(如果不存在) CREATE DATABASE IF NOT EXISTS mineadmin;
-- 授予用户对数据库的所有权限 GRANT ALL PRIVILEGES ON mineadmin.* TO 'ComplexUser123'@'%';
-- 刷新权限 FLUSH PRIVILEGES;
-- 验证权限 SHOW GRANTS FOR 'ComplexUser123'@'%';
刷新之后就有数据库访问权限了.
docker exec -it mysql_for_mineadmin mysql -u ComplexUser123 -p'G7h#9kLmP2@x'
# 错误如果使用127.0.0.1会报一个错误
Connection refused (SQL: select * from information_schema.tables where table_schema = 'minea dmin' and table_name = 'migrations')
解决办法:把127.0.0.1改为localhost
# 如果使用localhost又会报另外一个错误
No such file or directory (SQL: select * from information_schema.tables where table_schema = 'mineadmin' and table_name = 'migrations')
解决办法:把localhost改为docker容器中mysql的名字mysql_for_mineadmin
# 出现新问题:DNS Lookup resolve failed (SQL: select * from information_schema.tables where table_schema =
'mineadmin' and table_name = 'migrations')
是因为我不是使用的同一个dockerfile启动的网段不在一起.所以不能使用localhost也不能使用127.0.0.1,也不能使用mysql的容器名称
只能使用容器里面的ip
docker inspect mysql_for_mineadmin | grep IPAddress
通过这个命令查看,如果命令出错就取消后面的搜素
docker inspect mysql_for_mineadmin
# 结局:因为没有把两个容器的网络连接在一起,导致hyperf的mysql无法连接到mysql
- 01
- 免费的在线logo设计,uugai找了我好就12-24
- 02
- Untitled12-24