Nginx笔记(docker)

1. 下载nginx镜像

# 下载最新镜像

docker pull nginx 

# 查看镜像

docker images

2. 创建Nginx配置文件

# 创建挂载目录

mkdir -p /home/nginx/conf

mkdir -p /home/nginx/log

mkdir -p /home/nginx/html

3. 容器中的nginx.conf文件和conf.d文件夹复制到宿主机

# 生成容器
docker run --name nginx -p 9001:80 -d nginx
# 将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf
# 将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d
# 将容器中的html文件夹复制到宿主机
docker cp nginx:/usr/share/nginx/html /home/nginx/

4. 删除3中创建Nginx容器

#  关闭该容器

docker stop nginx

#  删除该容器

docker rm nginx

# 删除正在运行的nginx容器

docker rm -f nginx

5. 创建挂载对应文件的nginx容器

docker run \
-p 9002:80 \
--name nginx \
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /home/nginx/log:/var/log/nginx \
-v /home/nginx/html:/usr/share/nginx/html \
-d nginx:latest

 6. nginx.conf


user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
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;
    
    
    upstream myserver{
        server 119.29.236.140:8181;
        server 119.29.236.140:8282;
    }
    
    # server块
server {
# server全局块
        listen       80;
        server_name  119.29.236.140;

        
        location ~ /zero/ {
            proxy_pass http://myserver;
        }
        #charset koi8-r;

        #access_log  logs/host.access.log  main;

# location块
        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
}
    
# 可以配置多个server块    


}
 

7. 重启

docker restart nginx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Docker一个开源的容器化平台,可以通过使用Docker容器来运行应用程序。Nginx一个流行的Web服务器和反向代理服务器。Vue是一个流行的JavaScript框架,用于构建用户界面。跨域是指在浏览器,当一个网页的脚本试图访问另一个源(域、协议或端口)的资源时,会触发跨域问题。解决Docker+Nginx+Vue跨域问题的一种方法是配置Nginx服务器的反向代理。具体步骤如下: 1. 在Docker使用Nginx作为前端代理。创建一个Dockerfile文件,指定基础镜像为Nginx,并将前端Vue项目的dist目录复制到Nginx的html目录下。同时,将自定义的nginx.conf文件复制到Nginx配置目录。这样可以将Vue项目通过Nginx进行访问。 2. 在Nginx配置文件配置反向代理来解决跨域问题。在nginx.conf文件,添加一个location配置块,将请求转发到后端接口的地址。可以使用proxy_pass指令来指定代理的地址。 3. 在Vue项目的代码,确保请求的URL使用相对路径或者使用绝对路径加上Nginx代理的地址。这样可以保证请求会被发送到Nginx代理服务器,从而避免跨域问题。 通过以上步骤,你可以使用Docker部署Nginx和Vue项目,并且配置Nginx进行反向代理以解决跨域问题。这样就可以正常访问Vue项目了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【笔记】【踩坑】Docker + Nginx + Vue部署前端项目和跨域CORS解决](https://blog.csdn.net/m0_56555119/article/details/126785363)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值