docker安装nginx并配置映射

1. 下载镜像,并复制默认配置

docker run --name mynginx -d nginx
# 创建主机挂载配置文件
mkdir -p ~/i/apps/nginx/{conf,conf.d,html,logs}
# 复制默认配置
docker cp mynginx:/etc/nginx/nginx.conf ~/i/apps/nginx/conf/nginx.conf
docker cp mynginx:/etc/nginx/conf.d/default.conf ~/i/apps/nginx/conf.d/default.conf
docker cp mynginx:/usr/share/nginx/html/index.html ~/i/apps/nginx/html/index.html

要想查询默认配置可以:

  • docker run -i -t nginx /bin/bash:查看所有文件夹
  • cat /etc/nginx/nginx.conf:查看nginx.conf文件内容然后拷贝出来
  • cat /etc/nginx/conf.d/default.conf:查看default.conf文件内容然后拷贝出来
  • /usr/share/nginx/html:默认首页文件夹html路径
  • /var/log/nginx:日志文件路径

2. 停止删除容器

docker rm -f mynginx

3. 生成启动文件 - start.sh

[root@master ~]# cd ~/i/apps/nginx/
[root@master nginx]# ls
conf  conf.d  html  logs
[root@master nginx]# cat <<EOF > start.sh
#!/bin/bash
NGINX_DIR=`pwd`
docker stop mynginx
docker rm mynginx
docker run -d \\
    --restart always \\
    -p 80:80 \\
    --name mynginx \\
    -v \${NGINX_DIR}/html:/usr/share/nginx/html \\
    -v \${NGINX_DIR}/conf/nginx.conf:/etc/nginx/nginx.conf \\
    -v \${NGINX_DIR}/conf.d:/etc/nginx/conf.d \\
    -v \${NGINX_DIR}/logs:/var/log/nginx \\
    nginx
EOF

说明:

-d: 后台运行容器;
--name: 指定容器名;
-p: 指定服务运行的端口;
-v: 映射目录或文件;

4. 运行start.sh 启动mynginx

[root@master nginx]# sh start.sh 
Error response from daemon: No such container: mynginx
Error: No such container: mynginx
5a23fe9288535c0141afb5b55c7c907e8c0a108dcda8fe486fb02028975ad5bb

5. 访问http://192.168.3.27/可以访问到nginx默认页面

在这里插入图片描述

6. 配置反向代理

[root@master nginx]# cd conf.d/
[root@master conf.d]# ls
default.conf
[root@master conf.d]# vi www.wanfei.com.conf
# 复制
server {
    listen  80;
    server_name  www.wanfei.com;
    access_log /var/log/nginx/wanfei.access.log main;
    error_log /var/log/nginx/wanfei.error.log error;
    location / {
        proxy_set_header  Host  $http_host;
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass  http://127.0.0.1:80;
    }
}
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Docker安装Nginx配置SSL证书的步骤如下: 1. 准备SSL证书:根据不同的云服务商,证书文件的后缀可能有所不同。腾讯云的证书文件后缀为.crt和.key,阿里云的证书文件后缀为.pem和.key。确保证书文件正确并可用。 2. 下载最新的Nginx镜像:使用以下命令下载最新的Nginx镜像: ``` docker pull nginx ``` 3. 创建目录:创建几个目录,用于挂载Nginx容器内的配置文件和日志文件。使用以下命令创建目录: ``` mkdir -p /usr/local/nginx/{conf,html,logs,ssl} ``` 4. 启动一个Nginx临时容器:使用以下命令启动一个Nginx临时容器,并将配置文件复制到主机上: ``` docker run --name nginx-temp -d nginx docker cp nginx-temp:/etc/nginx/nginx.conf /usr/local/nginx/conf/nginx.conf docker rm -f nginx-temp ``` 5. 上传SSL证书:将SSL证书上传到服务器的指定目录,例如将证书文件复制到/usr/local/nginx/ssl目录下。 6. 修改nginx.conf配置文件:编辑/usr/local/nginx/conf/nginx.conf文件,配置SSL证书的路径。确保路径是在容器内的地址,而不是主机的地址。 7. 正式启动Nginx:使用以下命令启动Nginx容器,并将挂载目录和端口映射配置好: ``` docker run --name nginx -p 80:80 -p 443:443 \ -v /usr/local/nginx/html:/usr/share/nginx/html \ -v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /usr/local/nginx/conf.d:/etc/nginx/conf.d \ -v /usr/local/nginx/logs:/var/log/nginx \ -v /usr/local/nginx/ssl:/etc/nginx/ssl \ --privileged=true -d --restart=always nginx ``` 8. 检查Nginx是否成功启动:使用以下命令检查Nginx容器是否成功启动: ``` docker ps ``` 以上是使用Docker安装Nginx配置SSL证书的步骤。请根据实际情况进行操作。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [docker安装nginx配置ssl证书](https://blog.csdn.net/LuoHuaX/article/details/127320361)[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^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值