Nginx安装

1.Nginx安装

先安装gcc环境

yum install gcc-c++

参考官方文档

nginx: Linux packages

按顺序执行如下命令

yum install yum-utils
yum install nginx

如果出现了密钥的问题

可以参考如下文档

https://cloud.tencent.com/developer/article/1676433

如果出现了该报错 报错:Loading mirror speeds from cached hostfile

解决方案如下:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all  #清除所有
yum makecache #重新建立源数据

再次yum即可

如果是docker 以上命令则在容器里面进行安装

关于docker 容器增加端口映射的问题 可以参考如下博客

注意:在添加端口映射前要关掉相应的docker容器,修改文件之后要重启docker服务,然后再开启相应的容器,也就是先docker stop XXX,然后修改配置文件,然后systemctl restart docker,最后docker start xx

2.运行Nginx

nginx

查看nginx 是否在运行

ps -ef | grep nginx

3.docker容器的文件位置

docker的主目录在/var/lib/docker,docker容器的目录在这个目录的containers/中,这里的文件夹名字很长,不过文件夹前12位字符,就是通过docker ps -a展示出来的CONTAINER ID

Tomcat配置

yum install tomcat

启动tomcat

systemctl start tomcat

关于怎么往容器中的tomcat添加文件

如果采用该方式 浏览器的访问路径应该是

注意12260是主机容器nginx的端口映射,12261是从机容器nginx的端口映射

http://IP地址:12260/my/XXX

docker cp index.html d1e81fe2428d3846dbbf4195f598a19edcba710037413b46193823c95a66b355:/usr/share/tomcat/webapps/my
docker cp login_war_exploded d1e81fe2428d3846dbbf4195f598a19edcba710037413b46193823c95a66b355:/usr/share/tomcat/webapps/my
docker cp 1.jpg  d1e81fe2428d3846dbbf4195f598a19edcba710037413b46193823c95a66b355:/usr/local/nginx/static

注意 当前目录下 有index.html才行

在我的服务器中,该文件在/root/kaiyuan里面

注意docker容器的文件空间在这里看,里面是一堆容器ID

/var/lib/docker/containers

注意:其实往容器的tomcat添加文件,只要把

nginx DNS TTL设置 nginx dns分流_nginx DNS TTL设置

下列编译后的web文件夹放到/usr/share/tomcat/webapps/下面即可

访问方法:http://ip地址:12260/{文件夹名字}/{文件名}

Nginx配置负载均衡和动静分离

负载均衡

Nginx安装目录是/etc/nginx

Nginx配置文件为:/etc/nginx/nginx.conf 其中包含配置为: include /etc/nginx/conf.d/*.conf;

另一个配置文件为:/etc/nginx/conf.d/default.conf

在nginx.conf中添加以下内容:

upstream Servers{
server 192.168.110.1:8888; #作为web服务器集群的一个节点
 server 192.168.110.132:8080; #作为web服务器集群的一个节点
 server 192.168.110.133:8080; #作为web服务器集群的一个节点
}
在default.conf中添加红色部分内容:
在server 的location中添加以上的Servers
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
 root /usr/share/nginx/html;
 index index.html index.htm;
 proxy_pass http://Servers; #此为添加内容
}

#error_page 404 /404.html;

动静分离

在nginx的default.conf(/etc/nginx/conf.d/default.conf)中,
设置动态资源映射 设置后缀名为jsp或do的访问请求移交给Tomcat集群处理 :
location ~ .*.(jsp|do)$ { proxy_pass http://Servers; proxy_set_header Host $host; }
设置静态资源映射 设置图片后缀的请求访问nginx中的static文件夹处理:
注意要自己在虚拟机或者容器 中创建/usr/local/nginx/static这个文件
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { root /usr/local/nginx/static; }