[关闭]
@Chiang 2021-06-27T01:32:33.000000Z 字数 2547 阅读 694

dnmp lnmpa 环境搭建

dnmp lnmpa 2021-06



亲测机型

  • MacBook Pro
  • Win10 专业版

Win10 开始前操作

  • 关闭防火墙
  • win+r 输入cmd
  • 进入命令行窗口输入powershell
  • 这样常规的bash shell 命令都可以使用了

基于docker环境搭建的优点

  • 不会污染宿主环境
  • 可移植,便于打包
  • 启停方便,搭配自如

docker的一些简单命令

  1. # 获取镜像
  2. docker pull ubuntu:18.04
  3. # 查看所有镜像
  4. docker image ls -a
  5. # 删除镜像
  6. docker image rm centos
  7. # 删除所有镜像
  8. docker rmi `docker image -q`
  9. # 根据镜像生成启动容器并进入
  10. docker run -it --rm ubuntu:18.04 bash
  11. # 查看所有容器
  12. docker container ls -a
  13. # 启动已存在的容器
  14. docker container start web
  15. # 终止容器
  16. docker container stop web
  17. # 进入容器
  18. docker exec -it web bash
  19. # 删除容器
  20. docker container rm web
  21. # 清理所有处于终止状态的容器
  22. docker container prune
  23. # 将容器快照导出到本地文件
  24. docker export web > ubuntu.tar
  25. # 将容器快照文件导入为镜像
  26. cat ubuntu.tar | docker import - fazhan/ubuntu:v1.0
  27. # 挂载一个主机目录作为数据卷
  28. docker run -it -p 127.0.0.1:8080:80 --name web --mount type=bind,source=C:\Users\admin\dockerdir,target=/root/hostdir ubuntu
  29. # 绑定多个端口
  30. docker run -it \
  31. -p \
  32. 127.0.0.1:80:80 \
  33. 127.0.0.1:443:443 \
  34. 127.0.0.1:3306:3306 \
  35. 127.0.0.1:6379:6379 \
  36. --name web \
  37. --mount type=bind,source=C:\Users\admin\dockerdir,target=/root/hostdir \
  38. ubuntu

Win10 专业版lnmp搭建

  1. # 创建
  2. docker run -it -p 127.0.0.1:8080:80 --name web --mount type=bind,source=C:\Users\admin\dockerdir,target=/root/hostdir ubuntu
  3. # 启动
  4. docker container start web
  5. # 执行&进入
  6. docker exec -it web bash
  7. # 导出
  8. docker export 7691a814370e > ubuntu.tar
  9. # 导入
  10. cat ubuntu.tar | docker import - fazhan/ubuntu:v1.0
  11. # 创建&启动
  12. docker run -it fazhan/ubuntu:v1.0 bash
  13. # 进入容器内的操作
  14. cd ~/hostdir
  15. apt-get update
  16. apt-get install screen
  17. apt-get install wget
  18. # 这里给docker分配的内存要大点,我执行了两次都卡在88%不动了
  19. wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lnmp
  20. cd tools
  21. # 删掉禁用函数(Laravel依赖)
  22. ./remove_disable_function.sh
  23. # 跨目录移除工具(Laravel依赖)
  24. ./remove_open_basedir_restriction.sh
  25. # 通过Composer安装Laravel
  26. composer create-project laravel/laravel example-app
  27. cd example-app
  28. # 这里默认绑定的是8000端口
  29. php artisan serve
  30. # 关闭 Nginx的80端口占用
  31. /etc/init.d/nginx
  32. # 绑定80端口
  33. php artisan serve --port=80
  34. # 或者配置lnmp服务器
  35. /usr/local/nginx/conf/nginx.conf
  36. # 配置代码
  37. server {
  38. listen 80;
  39. server_name example.com;
  40. root /srv/example.com/public;
  41. add_header X-Frame-Options "SAMEORIGIN";
  42. add_header X-Content-Type-Options "nosniff";
  43. index index.php;
  44. charset utf-8;
  45. location / {
  46. try_files $uri $uri/ /index.php?$query_string;
  47. }
  48. location = /favicon.ico { access_log off; log_not_found off; }
  49. location = /robots.txt { access_log off; log_not_found off; }
  50. error_page 404 /index.php;
  51. location ~ \.php$ {
  52. fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
  53. fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
  54. include fastcgi_params;
  55. }
  56. location ~ /\.(?!well-known).* {
  57. deny all;
  58. }
  59. }

MacBook Pro dnmp环境搭建

参考:https://github.com/yeszao/dnmp


参考资料:
https://github.com/yeasy/docker_practice
https://github.com/yeszao/dnmp
https://github.com/licess/lnmp

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注