小工具知识网

当前位置: 首页 > 行业知识 > 【docker启动nginx】

行业知识

【docker启动nginx】

2026-11-09 14:31:09 来源:互联网转载

docker启动nginx

  • docker启动nginx
    • 1. 抓取镜像并生成目录
    • 2. 生成自签名证书(生产环境需要到CA申请)
      • 2.1 首先将openssl拷贝到nginx/ssl目录
      • 2.2 编辑 openssl.cnf
      • 2.3 生成证书
      • 3. 生成Nginx basic认证密码
        • 3.1 安装httpd工具
        • 3.2 生成密码文件
        • 3.3 配置密码文件
        • 4. 配置Nginx
          • 4.1 生成nginx.conf文件
          • 4.2 生成default.conf(包含各个server块,每个server块监听指定的server_name和port)
          • 4.3 生成80_server(将HTTP请求转发为对应的HTTPS请求)
          • 4.4 生成admin_9443_server文件(用于管理员访问etcd, es, kibana, grafana等)
          • 4.5 生成meta_locations(一般无需改变)
          • 4.6 生成extra_locations(一般无需改变)
          • 4.7 生成meta_server
          • 4.8 生成proxy选项
          • 5. 启动Docker
          • 6. 打通防火墙
          • 7. 外部访问验证

            docker启动nginx

            nginx一般用做web服务器,一般为了公网访问需要申请https证书,并进行配置,本次自己制作证书。

            使用容器后,需要考虑网络以及配置和日志的持久化,本次复用宿主机网络,生产环境一般来说做端口映射。

            集群一般在前置添加负载均衡即可。

            1. 抓取镜像并生成目录

            docker pull nginx:1.21.6 &&mkdir -p /home/nginx/conf &&mkdir -p /home/nginx/logs &&mkdir -p /home/nginx/ssl &&mkdir -p /home/nginx/conf/conf.d

            2. 生成自签名证书(生产环境需要到CA申请)

            2.1 首先将openssl拷贝到nginx/ssl目录

            cp /etc/pki/tls/openssl.cnf /home/nginx/ssl

            2.2 编辑 openssl.cnf

            vi /home/nginx/ssl/openssl.cnf
            [ req ] req_extensions = v3_req  //取消对应的注释 

            2.3 生成证书

            cd /home/nginx/ssl &&openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -config openssl.cnf -extensions v3_req -keyout /home/nginx/ssl/nginx.key -out /home/nginx/ssl/nginx.crt

            上面的证书生成命令请依次输入口令:XX XX XX XX XX (回车) (回车)

            cp /home/nginx/ssl/nginx.crt /home/nginx/ssl/space.crt &&cp /home/nginx/ssl/nginx.key /home/nginx/ssl/space.key

            3. 生成Nginx basic认证密码

            3.1 安装httpd工具

            yum install httpd-tools -y

            3.2 生成密码文件

            htpasswd -c -d /home/nginx/conf/conf.d/admin_pwd admin

            然后输入16位随机密码

            注意:如果要删除密码文件:htpasswd -D -d /home/nginx/conf/conf.d/admin_pwd admin

            3.3 配置密码文件

            tee /home/nginx/conf/conf.d/admin_pwd.config 

上一篇:服务器mod怎么添加?

下一篇:宝塔面板工具怎么使用?