当前位置: 首页 > news >正文

装置艺术那个网站做的好杭州做代发的网站有哪些

装置艺术那个网站做的好,杭州做代发的网站有哪些,青岛中小企业建设网站有扶持资金吗,代理注册公司需要什么资料一、前言 对于很多开发者来说#xff0c;突然转到在 mac 系统开发#xff0c;可能会非常难受#xff0c;主要有以下几个原因 1、mac 上安装软件程序坑多#xff0c;比如安装 PHP、Nginx#xff0c;会存在很多使用 linux 或 windows 时没有遇到过的坑 2、对 mac 系统不熟…一、前言 对于很多开发者来说突然转到在 mac 系统开发可能会非常难受主要有以下几个原因 1、mac 上安装软件程序坑多比如安装 PHP、Nginx会存在很多使用 linux 或 windows 时没有遇到过的坑 2、对 mac 系统不熟悉就导致排查错误很难快速定位网上资料都是复制粘贴一顿抄很难得到借鉴 3、mac 对文件的权限掌握比较烦比如执行一个 find / -name ... 都会报出一大趟 permission 心情瞬间跌入谷底 4、windows 上用习惯的很多软件到了 mac 系统找不到了并且一时半会还找不到替代品 基于此用博主自己的难受经历帮助后来者不再体会这种难受让 转到 mac 开发的开发者快速上手不至于把时间浪费在环境不一致上。 可以采用的部署方案 1、使用 mac 自带的双系统功能安装 windows 系统完全放弃使用 mac 系统改为使用熟悉的 windows 系统开发 2、在 mac 系统安装虚拟机虚拟机上运行 windows 环境 3、使用 mac 的集成环境 mamp pro它和 windows 上 phpstudy 类似工具里可以选择使用 apache、nginx、mysql5.7以及多个PHP 版本、Redis、MongoDB 4、使用 docker 在mac 系统上部署开发环境不使用 mac 自身的软件转而使用 docker 部署的环境将 docker 容器的端口与 mac 系统的端口进行映射 最终采用的部署方案 前两种方案都是转为使用 windows 系统。 第三种方案是使用集成环境就像在 windows 上使用 phpstudy 一样只要简单的配置就可以快速集成开发但因为其依托的还是Mac系统因此mac系统上的文件权限以及一些其他问题后期可能还是会出现放弃使用。 第四种方案使用docker部署 LNMP 环境使整个开发环境独立于 mac 之外好处在于容错率高不受 mac 系统特性的约束且其依托于 centos 运行出现问题更易排查并且使用 docker 可以方便后期快速以秒级实践微服务、集群等操作。 因此最终决定使用第四种方案采用 docker 部署 LNMP 环境镜像包我之前已经制作过属于拿来就可以用预计采用这种方式部署完成 测试完成 时间不会超过 20 分钟将大大的减少在环境部署上浪费的时间。 简单描述 docker 的作用 这里简单说下docker的作用docker在团队中一般用于集成统一开发环境并且 使用 docker 可以快速的部署集群docker 的作用和虚拟机类似但是它的性能却是秒级甚至是毫秒级的在对机器的性能利用上远远超过虚拟机。 Docker 技术并不难掌握使用起来却极为方便。 二、正式使用 Docker 在 mac 上部署开发环境 1、下载 docker 的 dmg 包 官网下载地址https://www.docker.com/products/docker-app 注如果下载速度慢可以下载我上传到百度网盘的 链接: https://pan.baidu.com/s/1oNMCdokjCAcK93Nr3IIfpw  密码: h6ra 2、在 mac 系统上安装 docker 这个就不说了就和安装 phpstorm 是一个套路安装后它是长这个样子的 3、你可以在 mac 的最上面找到它 在这里我们可以关闭或重启 docker 服务 4、在 mac 上配置 docker 的国内下载镜像 注默认会从国外的 dockerhub上拉取镜像这样下载镜像会非常慢的 cd ~ cd .docker vi daemon.json#将文件内容替换为下面内容{registry-mirrors: [http://hub-mirror.c.163.com] } 5、下载别人制作好的 LNMP 集成环境镜像 注这里我制作了一个 集成 Linux-centos7.6、Nginx、MySQL5.7、PHP7.3、Redis 的镜像供大家使用。该镜像内部还下载了一些 PHP 常用的扩展比如 PDO、curl、fileinfo、openssl、memcache、memcached、redis、swoole、yaf、yar、amq以减少大家在安装扩展时浪费的时间。拉取后创建容器就可以直接使用非常便捷。 在mac终端执行 docker pull haveyb/lnmp 点击进入该 docker LNMP 镜像使用介绍 6、创建容器 这里就可以按照需求来自定义创建了。 这里在创建时指定了将宿主机的 /Users/data 与 容器内的 /data 同步并且做了3个端口的映射。 也就是将常用的 nginx 的80端口redis 的 6379 端口、mysql 的3306 端口都与宿主机 mac 系统的端口做了映射。这样我们就可以在mac 通过 navicat、redis desktop manager 来连接容器内的mysql和redis实现无缝连接。 docker run -itd --name lnmp --privileged -p 6379:6379 -p 80:80 -p 3307:3306 -v /Users/SH-Server:/data haveyb/lnmp /usr/sbin/init 容器创建成功会返回容器ID。 参数解释 -itd指定容器以交互的方式运行 --name指定创建的容器叫什么名字 -p指定宿主机 mac 和容器内的端口映射比如-p 3307:3306则表示连接mac 的3307 端口实际上就会请求到容器内的3306端口-p 参数可以指定多个 -v指定目录共享比如 -v /Users/SH-Server:/data则表示将宿主机 mac 的 /Users/SH-Server 目录与容器内的 /data 目录共享同步-v 参数也可以指定多个 --privileged赋予特殊权限如果不指定有些命令在容器内将不能执行 haveyb/lnmp命令中的 haveyb/lnmp 表示指定使用哪个镜像为基础创建容器可以将镜像理解成一个包装好的模具而容器就是模具生产出来的实际可以使用的产品 /usr/sbin/init指定启动容器使用的命令指定这个启动命令将可以使用 systemctl 等命令 点击快速查看 docker 常用命令 7、创建容器后进入容器 docker exec -it lnmp bash 发现没是我们最熟悉的linux界面如果你细心的话会发现用户名变成了root并且后面跟着的字符串就是我们运行的容器的容器ID标识   注在 mac 系统中执行命令 docker exec -it 容器名 bash 进入指定的容器 docker images 将显示现在mac 系统所有的docker 镜像 docker ps -a     将显示所有容器并且如果指定了端口映射端口映射也会打印出来 docker start/stop 容器ID开启或关闭容器 docker rm 容器ID移除指定的容器前提是要先关闭这个容器 docker rmi 镜像ID移除指定的镜像前提是已经没有通过这个镜像创建的容器存在了 注在容器中执行命令 exit 退出容器返回 mac 系统 8、由于镜像已经集成 LNMP 环境了因此我们这里可以直接开始搭建测试站点了   1修改mac环境的hosts 文件把指定域名的请求转为请求本地。在mac 上执行 sudo vi /etc/hosts 将要测试的域名添加到这里比如这样 2到容器中编写 nginx 站点配置文件 因为前面我们已经做了 宿主机的 80 端口 映射到 容器内的 80 端口因此在mac上浏览器域名访问时请求的mac系统的 80 端口将直接将请求打到容器内的80端口 # 先从mac进入容器内部 docker exec -it lnmp bash 然后到 /usr/local/nginx/cond.d 目录下创建一个名为 ttt.haveyb.com.conf 的文件内容如下 server {listen       80;server_name  ttt.haveyb.com;client_max_body_size 128M;charset utf-8;error_log    /usr/local/nginx/logs/error/ttt.haveyb.com.log error;access_log  /usr/local/nginx/logs/access/ttt.haveyb.com.log main;root   /data/ttt;index  index.html index.htm index.php;location / {try_files $uri $uri/ /index.php?$query_string;}location ~ ^/assets/.*\.php$ {deny all;}location /favicon.ico {log_not_found off;access_log off;}error_page  404 403 500 502 503 504  /404.html;location /404.html {root   /data/errorPage;}location ~ \.php$ {fastcgi_pass   unix:/dev/shm/php-cgi.sock;fastcgi_index  index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include        fastcgi_params;}location ~ /\.ht {deny  all;}} 3编写测试文件到定义的网站目录下编写一个测试的PHP文件这里就是上面指定的 /data/ttt 目录 cd /data mkdir ttt vi index.php?php phpinfo(); 9、在mac上通过浏览器访问我们配置的域名 ttt.haveyb.com 将直接将请求打到容器内的nginx由容器内的 nginx 处理请求如果不出意外将会返回 PHPINFO 的信息 10、结语 到这里就已经很简单的配置好了 MAC 上的 PHP开发环境并能够正常访问了并且除了 hosts 文件外并没有其他任何文件涉及到 mac 本身的都是 linux 的完美实现前期的期望。 整个部署过程 测试过程应该不会超过 20 分钟。 对比直接在 mac 系统上搭建环境节省了很多时间。并且避免了mac 系统使用上的许多坑。 三、程序管理在docker 容器中操作 1、Nginx 的管理 systemctl status/start/stop/restart/reload nginx# 站点的配置文件放在 /usr/local/nginx/conf.d 目录下 2、PHP 的管理 systemctl status/start/stop/restart/reload php-fpm# php.ini 文件位于/usr/local/php/etc/php.ini# phpize全局可用 3、MySQL 的管理 systemctl status/start/stop/restart/reload mysql# MySQL 数据文件、慢查询日志、错误日志位于 /usr/local/mysql/data 目录下# 配置文件位于 /etc/my.cnf# 初始密码123456 1可以通过设置mysql错误日志级别 log_error_verbosity 来减少mysql错误日志的记录默认是都记录建议添加 log_error_verbosity 1即只记录error 2如果restart报错则执行 chown -R mysql:mysql /usr/local/mysql/ 这个过程大约会用1分钟左右的时间然后再restart 3如果你的云服务器配置没有到 2核cpu-4G内存那很有可能会出现 mysql 重启失败 这是内存容量导致的。因此建议运行docker的云服务器配置不说太高但是2核4G是最少的了。 4云服务器可以和我一样选购腾讯云的主要是cpu性能不阉割价格还便宜 。点击进入 购买直通车腾讯云限时秒杀    4、Redis 的管理 systemctl status/start/stop/restart/reload redis# conf 配置文件位于 /etc/redis.conf哨兵sentinel配置文件位于 /etc/redis-sentinel.conf# 初始密码haveyb 5、memcached 的管理 systemctl status/start/stop/restart/reload memcached  四、Docker 使用过程中可能遇到的问题及解决方案 1、Docker创建容器后并映射端口号后navicat 远程连接mysql 2、Docker中使用git clone 报错 Could not resolve host: github.com; Unknown error 3、进入容器后没有clear指令 yum install ncurses 五、使用 mac 开发过程中建议使用的软件 博主在 windows 上开发时使用的是 phpstudy xshell filezilla换到 mac 上发现一个没有mac版本的经过实验各个类似软件我这里只推荐我认为替代最完美的软件供你参考。 1、开发idea 还是使用 PHPStorm 2、连接本地使用 Termius 相当于 windows 上的 cmd 和 cmder苹果自带的工具叫做“终端”但这里推荐我认为更好用的 Termius 3、连接远程服务器使用 Termius 相当于win10 上的 xshell对还是这个软件用过几乎市面上的所有ssh终端发现只有它能够完美替代 xshell最主要的是颜值高看着就舒服 它是收费的但我相信一个程序员的素养是绝对可以找到破解版的对吗 4、本地与远程服务器之间传输文件Termius 在 windows 上实现这个功能使用的工具是 filezilla在mac上推荐使用的还是Termius 而且它不仅可以本地与远程服务器之间传输还可以两个不同的远程服务器之间传输 5、虚拟机vmware fusion 虚拟机性能并不高因此这里建议只将一些mac上无法替代的办公软件放到这里我在虚拟机里只放了一个 mindmaster思维导图工具当然mac 上也有 xmind 和 mindNode但毕竟用习惯了也不准改了 6、连接数据库navicat Premium 在连接数据库上不论是 windows 还是 mac使用的都是这个没得说 7、接口测试 postman没错mac 上也是有 postman 的 维护搜索生态从我做起拒绝任何人转载。 之所以这样说是因为之前在mac上部署开发环境时遇到问题搜索出来的结果居然都一样都是复制粘贴的这样浪费了很多时间。为了避免这种情况发生维护搜索生态打击一切符合粘贴式的文章发表是十分有必要的。也倡导所有人都能够写自己确实的文章而不是转载复制粘贴。 老迟笔记 https://www.haveyb.com
http://www.zqtcl.cn/news/335395/

相关文章:

  • 做网站页面的软件wordpress如何开启page页面评论
  • 做网站最简单的长春财经学院
  • 导购网站 icp备案要求网站设置ico
  • ftp做网站营销策划方案步骤
  • 网站建设若干意见wordpress查看数据库密码
  • 什么网站可以做宣传西安网站建设聚星互联
  • 产品展示网站源码2015年做哪些网站致富
  • 潍坊网站制作推广怎样做彩票网站
  • 做视频网站被判刑自己怎么做企业网站建设
  • 安庆网站建设兼职哪个公司的卡网络最好
  • tp框架做响应式网站青岛网站建设首选
  • 外国自适应企业网站做网站模板用什么框架
  • win7做网站服务器隐私浏览器
  • 优秀的设计网站广州排名推广
  • 做电商设计有什么好的网站推荐软件产品开发流程图
  • 建设网站请示宣传企业网站建设的
  • 汉中定制网站建设公司网站建设建站知识
  • 做壁纸网站建站优化办事效率高
  • linux 做网站数据库怎么开发ios软件
  • 沛县网站设计html制作网页的代码
  • 南昌网站建设公司如何万维网络(临沂网站建设)
  • 张家界做网站洛阳网站建设哪家专业
  • 快餐网站模板电子版邀请函制作软件免费
  • 有什么做视频的素材网站网站名称注册保护
  • 北京 顺义 网站制作h5网站网站建设
  • 网站在百度上搜不到了wordpress导航菜单加图片
  • wordpress网站访问慢网站建设35类
  • 绍兴做网站价格字体
  • asp.net网站开发实训可以不花钱做网站吗
  • 北京网站的制作设计服务器和电脑主机的区别