关注分享主机优惠活动
国内外VPS云服务器

Docker+Nginx部署前端项目详细流程记录(Docker配置Nginx)

配置相关安装和安装Docker

Yum docker启动服务启动docker

Systemctl启动dockerDocker提取nginx图像

码头工人拉nginx

创建配置文件我们需要在根目录下创建Dockerfile文件和default.conf文件。

default.conf文件的名称是什么并不重要,只要在配置文件中使用相同的名称即可。

Docker+Nginx部署前端项目详细流程记录(Docker配置Nginx)-主机频道

Dokcerfile文件的具体内容如下:

FROM nginx:latest#将项目根目录下dist文件夹中的所有文件复制到mirror/usr/share/nginx/html/html/Copy default . conf/etc/nginx/conf . d/default . conf FROM nginx:latest:命令的含义。这个镜子是基于nginx:最新的镜子。copy Dist//usr/share/nginx/html/:该命令的意思是将项目根目录下dist文件夹中的所有文件复制到镜像中的/usr/share/nginx/html/目录下。这里我们不移动镜像中的目录,但是我们需要确保我们项目的打包目录是dist/,或者定制成你打包的目录。

copy default.conf/etc/Nginx/conf.d/default.conf命令是指将Nginx目录下的default.conf复制到etc/Nginx/conf . d/default . conf中,并用本地default . conf配置替换Nginx镜像中的默认配置。这里我们不移动镜像中的目录,但是需要确保我们写的文件名也是default.conf,或者对应你自己写的文件名。

默认. conf

直接复制下面的配置就可以了。要特别注意的是,用于监控的端口号不需要移动。这里的端口80指的是集装箱的端口。最后,我们将把容器的端口映射到我们的主机服务器的端口,比如端口888。

8888:80

然后将其更改为您自己的服务器IP地址。

完整配置:

上游my_server{服务器121.41.4.33:3000;#后端服务器地址keepalive 2000} server { listen 80#这里不要动端口号,端口80是指集装箱的端口。最后,我们将把容器的端口映射到我们的主机服务器的端口,比如端口8888 server _ name 111.20 . XXX . XXX;#修改docker服务主机的ip/域名# charset koi 8-r;access _ log/var/log/nginx/host . access . log main;error _ log/var/log/nginx/error . log错误;location/{ root/usr/share/nginx/html;索引index.html index.htm;try _ files $ uri $ uri//index . html = 404;} #这里和vue本地代理的意思一样。所有以api开头的路径都代理到本地端口3000位置/API/{ proxy _ pass http://my _ server/API;proxy _ set _ header Host $ Host:$ server _ port;重写^/api/(.*)/$ 1 break;} error _ page 500 502 503 504/50x . html;location =/50x . html { root html;}}

打包部署项目将项目打包,将dist文件夹放在与刚才创建的Dockerfile,default.conf相同的目录下,上传到服务器。

Docker+Nginx部署前端项目详细流程记录(Docker配置Nginx)-主机频道

例如,我的代码存储在/home/test目录中。

然后你需要建立一面镜子。

Docker Build -t测试。我们不需要移动,

回溯测试是我们构建的映像的名称。表示要生成的代码的存储位置。在这里。因为我当前的目录是/home/test,而我项目的三个文件都位于/home/test目录下。

如果此时我们在另一个目录中,并且当前目录中没有要打包的文件,我们需要更改路径。

例如:

do kcer build -t test/home/testDocker+Nginx部署前端项目详细流程记录(Docker配置Nginx)-主机频道

然后,我们可以使用dokcer图像来查看我们现有的图像。

Docker+Nginx部署前端项目详细流程记录(Docker配置Nginx)-主机频道

映像构建完成后,我们可以用这个映像启动一个容器。

docker run -D-p 8888:80--name test -imagetest -D在后台运行-p 8888:80端口映射,将主机的8888端口映射到容器的80端口& ndash命名容器名称镜像名称然后我们可以使用docker ps查看当前运行的容器。

并使用IP地址和端口号来访问当前项目。

注意

我们已经完成了上面的端口映射,所以我们需要打开服务器中要使用的端口。

我们可以在云服务器的安全组中设置它。

或者使用命令设置。

查看开放端口的命令:firewall-cmd --list-all

检查防火墙状态:活动(正在运行)是开放状态系统状态防火墙..

查看已开发端口的命令:firewall -cmd --list -所有新的防火墙开放端口:firewall -cmd --zone = public --add -port = 3306/TCP --permanent

打开端口后需要重新加载防火墙:firewall-cmd --reload。

一些相关说明

如果我们不再需要这个容器和图像,

您需要首先停止此容器,然后移除容器和镜像。

首先用docker ps找到指定容器的ID,

使用停靠站

这样,上述错误就成功解决了!

自启动码头

为了避免上述问题的再次出现,可以设置docker启动自启动!

[root @ localhost/]# system CTL enable docker后续我们将使用Docker和github动作实现自动化部署。

综上,关于docker+Nginx部署前端项目的这篇文章已经介绍到这里了。关于docker+Nginx部署前端项目的更多信息,请搜索主机频道zhujipindao之前的文章。或者继续浏览下面的相关文章。希望大家支持主机频道zhujipindao。以后多来com!

未经允许不得转载:主机频道 » Docker+Nginx部署前端项目详细流程记录(Docker配置Nginx)

评论 抢沙发

评论前必须登录!