docker nginx 反向代理

使用docker pull nginx:1.12.0

编写docker-compose.yml

nginx:
image: 17daebd00e2c
ports:
- 80:80
volumes:
- /home/conf/nginx.conf:/etc/nginx/nginx.conf
links:
- nginx1
- nginx2
privileged: true

nginx1:
image: 17daebd00e2c
volumes:
- /home/www1:/usr/share/nginx/html
privileged: true

nginx2:
image: 17daebd00e2c
volumes:
- /home/www2:/usr/share/nginx/html
privileged: true

编写nginx.conf

在http模块中添加

upstream pro {
ip_hash;//根据ip访问,测试时可以注释
server nginx1:80;
server nginx2:80;
}

server模块中添加

location / {
proxy_pass http://pro;
#proxy_redirect off;
#如果是非80端口,配置为Host $host:端口号,目的是将代理服务器收到的用户的信息传到真实服务器上
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
add_header Access-Control-Allow-Origin *;

}

最后在www1和www2目录中添加html文件

直接访问html地址即可

nginx1和nginx2只可以在docker容器中访问

时间: 2024-12-27 15:50:19

docker nginx 反向代理的相关文章

ubuntu 16.04利用docker搭建java+tomcat+nginx反向代理/动静分离

ubuntu 16.04利用docker搭建java+tomcat+nginx反向代理 新建两个docker容器 docker run -it --name Tomcat-mysql -v /mnt:/mnt -p 8866:80 -p 33006:3306 ubuntu /bin/bash docker run -itd --name webserver -p 8888:80 -v /mnt/:/mnt/ ubuntu /bin/bash [email protected]:~# docker

docker部署pgadmin4并通过nginx反向代理

1.通过docker直接拉取pgadmin4容器,并运行 docker pull dpage/pgadmin4 docker run -p 5050:80 -e "[email protected]" -e "PGADMIN_DEFAULT_PASSWORD=abc12345678" -d dpage/pgadmin4 2.nginx反向代理配置如下 使用80端口访问配置如下 listen 80; server_name _; location / { proxy_

Nginx反向代理的配置

Chapter: Nginx基本操作释疑 1. Nginx的端口修改问题 2. Nginx 301重定向的配置 3. Windows下配置Nginx使之支持PHP 4. Linux下配置Nginx使之支持PHP 5. 以源码编译的方式安装PHP与php-fpm 6. Nginx多站点配置的一次实践 7. Nginx反向代理的配置 Nginx 作为 web 服务器一个重要的功能就是反向代理.其实我们在前面的一篇文章<Nginx多站点配置的一次实践>里,用的就是 Nginx 的反向代理,这里简单再

nginx反向代理

1. 操作系统 CentOS 6.4 x86_64 2.软件版本 Nginx 1.4.2 3.实验拓扑 注,实验拓扑见下文. 4.安装yum源 1 2 3 [root @nginx ~]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm [[email protected] ~]# rpm -ivh http://download.fedoraproject.org/

Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第三部分

Nginx反向代理.动静分离.负载均衡及rewrite隐藏路径详解 (Nginx Apache MySQL Redis) 楓城浪子原创,转载请标明出处! 更多技术博文请见个人博客:https://fengchenglangzi.000webhostapp.com 微信bh19890922 QQ445718526.490425557 三.Nginx动静分离及负载均衡 3.1 Nginx安装 请参考:https://fengchenglangzi.000webhostapp.com/?p=511 亦

nginx 反向代理

关于什么是nginx以及为什么使用的理论网上还是有很多资料的,这里就不在赘述了.下面简单的说一下nginx的反向代理及实现 一.反向代理: 反向代理(Reverse Proxy)方式是指它根据客户端的请求,从后端的服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端. 与正向代理不同,正向代理作为一个媒介将互联网上获取的资源返回给相关联的客户端,而反向代理是在服务器端(如Web服务器)作为代理使用, 而不是客户端. 客户端通过正向代理可以访问很多不同的资源,而反向代理是很多客户端都通

Nginx反向代理,负载均衡,redis session共享,keepalived高可用

相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此处可搭建服务器集群. redis服务器一台,用于session的分离共享. nginx主服务器:192.168.50.133 nginx备服务器:192.168.50.135 tomcat项目服务器1:192.168.50.137 tomcat项目服务器2:192.168.50.139 redis服

Cento7+Nginx反向代理实现多域名跳转

近期比较忙,所以很少写文档了,最近有个项目组有多个环境需要做映射,所以就想到了通过Nginx反向代理实现多域名地址跳转,以致就总结了一下,其实说到代理我们大家都知道.最常见最常说的所谓的就是NAT,就是将内部多个地址请求通过代理转达到外部.这个就叫正向代理,那什么是反向代理呢-就是和正向代理相反:所以很好理解,Nginx反向代理功能很强大,可以通过一个nginx代理实现多个域名及不同的端口进行代理转发,所以在日常的运维中很有帮助.我们今天的演示是通过Nginx反向代理实现内部不同的多个域名转发.

Nginx反向代理、负载均衡、页面缓存、URL重写及读写分离详解

大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统为 CentOS 6.4 x86_64 , Nginx 是版本是最新版的1.4.2,所以实验用到的软件请点击这里下载:http://yunpan.cn/QXIgqMmVmuZrm 一.前言 在前面的几篇博文中我们主要讲解了Nginx作为Web服务器知识点,主要的知识点有nginx的理论详解.ngin