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
相关推荐
HYNuyoah4 小时前
docker 安装win10系统
运维·docker·容器
JAVA学习通6 小时前
励志从零打造LeetCode平台之C端竞赛列表
java·vscode·leetcode·docker·状态模式
llm大模型算法工程师weng8 小时前
负载均衡做什么?nginx是什么
运维·开发语言·nginx·负载均衡
fTiN CAPA8 小时前
服务器无故nginx异常关闭之kauditd0 kswapd0挖矿病毒 CPU占用200% 内存耗尽
运维·服务器·nginx
lKWO OMET10 小时前
查看 nginx 是否已经启动
运维·数据库·nginx
WAIT_TIME11 小时前
昇腾910B虚拟卡(vNPU)创建以及Docker挂载
docker·容器·昇腾·runtime·虚拟显卡·vnpu
大大杰哥11 小时前
Docker笔记
java·docker
wuyikeer12 小时前
如何在docker中的mysql容器内执行命令与执行SQL文件
sql·mysql·docker
tian_jiangnan12 小时前
把 Docker 镜像推送到 阿里云容器镜像服务 ACR
阿里云·docker·容器
ywlovecjy12 小时前
【Nginx 】Nginx 部署前端 vue 项目
前端·vue.js·nginx