s最近,笔者终于在重重困难之下,完成了自己的第一个laravel项目,有什么感受呢,当然就是laravel虽然体型大,但是功能也更全了。总起来说,是一个在php后端领域值得深入挖掘,日积月累的框架。项目的本地开发和测试都已经完成,那么接下来面临的自然是部署到公网服务器上。当然我们也不会直接就在服务器上裸露部署,而是使用笔者前几篇文章提到的docker容器技术进行容器化隔离部署。那么从一个刚初始化后的服务器到部署完,该是怎么一个过程呢,让我们来一探究竟。
首先介绍我们的程序及服务器的配置:
后端程序及依赖安装程序
1.Laravel5.8
2.mysql5.7
3.composer
服务器及容器配置
1.腾讯云服务器
2.docker镜像:nginx-php(笔者订制nginx-php开发环境,读者可以自行下载使用,其中集成了nginx1.14,php7.4,以及php7.4-fpm,composer2.0依赖安装器,非常适合php后端开发的开箱即用)
3.docker镜像:mysql5.7
下面开始正题:
一 服务器的初始化配置
我使用的是腾讯云服务器,安装系统为后端人员最喜闻乐见的ubuntu16.04,给服务器装完系统之后,我们需要做以下操作:
1.修改用户名
一般在服务器初始化后,一般会分配统一的用户名,如腾讯云分配的是ubuntu用户名,我们一定要修改用户名为自己的自定义名称,这样就能一定程度上防止黑客猜到你的用户名,进行ssh远程登录,是维护服务器安全的一个基本操作。点此进行操作。记得修改完用户名后将服务器重启
注意,一般不要将服务器开通root登录,否则,一旦服务器被黑,服务器的一切都暴露在危险之中,如果非要修改服务器为root登录的话,点此进行操作。
而后,关于程序环境的搭建,和服务器系统就无关了,因为我们使用了容器技术,就要把所有的软件开发环境放在docker容器中。
2.将apt镜像源换为阿里云镜像源
更换操作如下:更换镜像源
如果是腾讯云服务器的话,本身的源镜像就是腾讯云的国内镜像,就不需要进行替换。
二 Docker环境的搭建及镜像的拉取和运行
1.ubuntu中安装docker
安装教程:ubuntu系统docker官方安装文档
2.设置docker阿里云下载源
(安装时间较为漫长,可以点上一杯咖啡了),但是,如果你是国内服务器的话,很不幸的是,你被wall了,这个时候,万能的阿里云镜像源(包含了很多常用的但是被wall的软件国内下载源)就会帮助到你了。
使用阿里云docekr-ce镜像进行下载安装:
1.docker阿里云镜像安装操作方法
2.docker阿里云镜像地址
注意:阿里云镜像库已经基本包含了所有常用的开源镜像,可以放心快速的使用:官方镜像
安装完docker之后,可以创建docker用户组,将当前用户加入其中,之后使用docker就不用再打sudo,使用管理员权限:操作方法如下
3.下载,安装,运行docker镜像nginx-php,mysql5.7
如上面介绍的nginx-php容器,是一个集成了Nginx,php,php-fpm.composer,甚至还有imagick 处理图像的php扩展,并且自带php-mysql扩展,能够为laravel的数据库迁移提供数据库驱动。专门为php后端开发量身打造的开发环境,真正做到即插即用。
nginx-php docekr 镜像地址
镜像下载完成之后,开始运行镜像,生成容器。
(1)nginx-php的运行
首先,在宿主服务器中创建nginx服务器架构文件夹,用来完成docekr容器向宿主机的文件映射。因为每次需要更改文件就进入docker容器中,实在是太难受了。
首先在文件中建立以下文件夹目录:
.
├── conf
├── log
│ ├── access.log
│ └── error.log
└── www
conf:用来存放nginx虚拟主机配置文件,后缀同意为.conf
log:用来存放nginx的日志文件
www:用来存放程序代码文件
创建完成之后,运行nginx-php镜像,生成容器,在运行时,注意三个文件夹的映射指定。
命令为:
docker run -itd --name pipihome -p 333-444:333-444 -v /usr/local/code/mine/pipihome/www/:/var/www -v /usr/local/code/mine/pipihome/conf/:/etc/nginx/conf.d -v /usr/local/code/mine/pipihome/log/:/var/log/nginx 4c2729e78cfa
</
本文详细记录了在Laravel项目线上部署中,如何使用Docker进行服务器初始化配置,包括修改用户名、更换镜像源,以及Docker环境搭建、nginx-php和mysql镜像的下载与运行。还提到了laravel项目配置注意事项,如文件夹权限、数据库连接和数据迁移。最后,解决了vim中文乱码问题,旨在帮助开发者高效部署。
最低0.47元/天 解锁文章

1211

被折叠的 条评论
为什么被折叠?



