docker nginx 简单的代理设置

nginx一种代理,虽然是开发,但是也要懂一些

这个地方我们通过docker 安装nginx并且设置简单的代理

如何安装nginx我这个地方就不做太多的叙述

现在我有一个网址: 10.0.13.140:8090

我们可以看到的是端口号是8090

这里我们做一个代理:通过10.0.13.140:8080/WebTest 也可以访问上面的项目

这个应该如何实现,也就是我们的nginx的功能了

下面我们看如何通过nginx进行配置:

我这里运行了容器,其中一个是nginx

我们进入这个容器:

[root@test tmp]# docker exec -it nginx bash
root@22b08550c481:/# cd /etc/nginx/
root@22b08550c481:/etc/nginx# ll
bash: ll: command not found
root@22b08550c481:/etc/nginx# ls
conf.d	fastcgi_params	koi-utf  koi-win  mime.types  modules  nginx.conf  scgi_params	uwsgi_params  win-utf

  我们可以看到的是有在/etc/nginx/ 有一个nginx.conf 文件和conf.d 文件夹

其中nginx.conf这个文件是nginx的配置文件,我们可以在这个里面进行我们自己的配置

我们看一下这个文件

root@22b08550c481:/etc/nginx# cat nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}
root@22b08550c481:/etc/nginx# 

在最后一行,我们可以看到的是,这个文件里面引入了/etc/nginx/conf.d/ 下面所有conf文件,也就是说我们可以在conf.d下面创建我们自己的conf文件

我们进入到conf.d目录下继续查看:

root@22b08550c481:/etc/nginx/conf.d# ls
default.conf

里面有一个default.conf文件,我们可以把这个文件cp到docker容器外面进行修改,进行我们自己的配置

listen 是nginx监听的端口,这个端口是docker的端口

charset utf-8  是编码

server_name 是宿主机的IP地址

location / {

 proxy_pass  http://10.0.13.140:8090  --//这个是我们要需要映射的地址,或者说是原地址,映射之前的端口是8090

}

保存之后,我们把这个文件cp到nginx原来的目录

然后重新启动docker

你会发现我们通过8080也可以访问上面的项目

希望对你有所帮助

转自:http://www.read8686.com/pages/detail/371

发布了356 篇原创文章 · 获赞 147 · 访问量 76万+

猜你喜欢

转载自blog.csdn.net/datouniao1/article/details/103491842
今日推荐