【Docker】4、Docker安装Nginx
2020-08-06 本文已影响0人
__Giraffe__
Nginx是一款支持集群,能够提供优秀的负载均衡,反向代理的服务器。我们可以在部署前端的时候,结合动静分离的思想,将静态文件部署在Nginx上,可以很大程度提高前端页面的加载速度,并且我们还能使用Nginx结合网关做反向代理,通过配置可以达到域名访问动态路由。
前置说明
-
之前的文章安装Docker中已经在
CentOS7
环境下安装好了Docker
,并且配置上了开机自启动以及阿里云国内镜像 -
今次将使用Docker配置安装Nginx,版本号选择为1.10
-
之后的操作都使用一般用户,而非
root
用户,为了方便管理,步骤中会有整理权限归属的操作。
安装步骤
-
从
DockerHub
启动一个Nginx
实例,该步骤主要是从实例中取出Nginx
的配置文件,方便之后的文件结构整理以及挂载sudo docker run -p 80:80 --name nginx -d nginx:1.10
-
从
Nginx
容器中拷贝出配置文件并整理。主要的目的是将nginx
整个文件夹作为配置文件夹conf
,便于后期的识别。sudo docker container cp 容器标识(ngxin):/etc/nginx 复制出来的路径(/mydata)
sudo chown -R 用户名(Giraffe).组名(dev) 文件位置(/mydata/nginx/)
mv /mydata/nginx/ /mydata/conf
mkdir /mydata/nginx
mv /mydata/conf/ /mydata/nginx/
-
停止临时的
Nginx
容器并删除它sudo docker stop 容器唯一标识(nginx)
sudo docker rm 容器唯一标识(nginx)
-
重新以文件挂载的方式创建实例容器并启动。(到这一步已经不需要再从仓库拉取镜像了,因为之前的启动操作已经从仓库里拉取了一个最新的镜像)
sudo docker run -p 80:80 --name nginx \ -v /mydata/nginx/html:/usr/share/nginx/html \ -v /mydata/nginx/logs:/var/log/nginx \ -v /mydata/nginx/conf:/etc/nginx \ -d nginx:1.10
-
整理权限组。
sudo chown -R 用户名(Giraffe).组名(dev) 文件位置(/mydata/nginx/)
-
配置开机自启动
sudo docker update 容器唯一标识(nginx) --restart=always
-
done!此时可以通过
docker ps
查看ngxin
容器的启动情况,并且可以直接将需要静态文件直接挂载在主机端,关于nginx
的反向代理配置或者是动态路由,都可以直接在外部的挂载文件中修改,都能立即生效到容器内部。