docker安装nginx并配置SSL

1、拉取镜像

复制代码
docker pull nginx

2、启动nginx容器,复制一份默认配置文件出来

复制代码
// 以nginx镜像为基础镜像创建一个名为nginx01的容器
docker run -d -p 80:80 --name nginx01 nginx

创建成功后会看到nginx的欢迎页面

3、挂载nginx目录

复制代码
拷贝nginx的配置信息到主机目录
sudo docker cp nginx01:/etc/nginx /usr/local/

删除容器
docker rm -f nginx01

4、重新创建nginx容器并挂载配置目录

复制代码
docker run -d -p 80:80 -p 443:443 --name nginx01 -v /usr/local/nginx:/etc/nginx nginx

如果 STATUSUP 则表示启动成功

复制代码
docker ps

5、查看挂载是否成功

复制代码
docker inspect nginx01

6、在宿主机创建ssl目录

复制代码
mkdir /usr/local/nginx/ssl

进入容器查看挂载文件是否同步到容器内

复制代码
docker exec -it nginx01 /bin/bash

进入容器的nginx配置目录

复制代码
cd /etc/nginx/ssl

能进入目录则表示同步成功,退出容器

复制代码
exit

7、修改配置宿主机,增加ssl证书配置

复制代码
vim /usr/local/nginx/conf.d/default.conf

部分配置如下

复制代码
server {
    listen  443 ssl;
    server_name      www.xxx.com;
    ssl_certificate      /etc/nginx/ssl/xxxxx.crt;
    ssl_certificate_key  /etc/nginx/ssl/xxx.key;
    
    # listen       80;
    #server_name  localhost:8090;
    
    client_max_body_size 500m;
    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        root   html;
        index  index.html index.htm;
        proxy_pass http://ip:端口/;
    }

    #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;
    }

8、重启nginx容器

复制代码
docker restart nginx01
相关推荐
xhaxy2 小时前
docker
docker·容器·eureka
一技安身5 小时前
【信创】Docker‑Compose V2 两种离线部署(独立模式、插件模式)简易教程
java·docker·eureka
PHP实战开发录8 小时前
PHP文件上传成功为什么页面却找不到
开发语言·nginx·php·开发
鸿观工坊9 小时前
Docker 多阶段构建实践指南
docker
大牧师11 小时前
MySQL 学习教程
数据库·sql·mysql·docker·node·全栈·后端数据
天外天-亮13 小时前
docker + window 安装
运维·docker·容器
进击的小菜鸡dd13 小时前
docker 容器的挂载映射关系查看
运维·docker·容器
程序员老赵13 小时前
Docker 部署 TeX Live:轻松搭建 LaTeX 论文排版编译平台
前端·docker·latex
陈皮糖..14 小时前
基于 Keepalived 的传统 Web 高可用架构的容器化改造与可观测性升级
运维·docker·性能优化·架构·云计算·prometheus
秦jh_14 小时前
222222
docker