一、启动容器

docker run --detach

--name wx-nginx

-p 443:443

-p 80:80

-v /home/nginx/data:/usr/share/nginx/html:rw

-v /home/nginx/config/nginx.conf:/etc/nginx/nginx.conf/:rw

-v /home/nginx/config/conf.d/default.conf:/etc/nginx/conf.d/default.conf:rw

-v /home/nginx/logs:/var/log/nginx/:rw

-v /home/nginx/ssl:/ssl/:rw

-d nginx

--name:容器名称

-p:端口映射(本地端口:容器端口)

-v:配置文件映射(本地文件/目录:容器文件/目录),后面跟随权限

-d:后台运行

注意:此处直接运行默认本地创建的全部都是目录,需要创建如下文件

touch /home/nginx/config/nginx.conf

touch /home/nginx/config/conf.d/default.conf

二、编辑nginx配置文件

vim /home/nginx/config/nginx.conf

#运行nginx的用户

user nginx;

#启动进程设置成和CPU数量相等

worker_processes 1;

#全局错误日志及PID文件的位置

error_log /var/log/nginx/error.log warn;

pid /var/run/nginx.pid;

#工作模式及连接数上限

events {

#单个后台work进程最大并发数设置为1024

worker_connections 1024;

}

http {

#设定mime类型

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压缩

#gzip on;

include /etc/nginx/conf.d/*.conf;

}

vim /home/nginx/config/conf.d/default.conf

server {

listen 80; #侦听80端口,如果强制所有的访问都必须是HTTPs的,这行需要注销掉

listen 443 ssl;

server_name localhost; #域名

# 增加ssl

#ssl on; #如果强制HTTPs访问,这行要打开

ssl_certificate /ssl/server.crt;

ssl_certificate_key /ssl/server.key;

ssl_session_cache shared:SSL:1m;

ssl_session_timeout 5m;

# 指定密码为openssl支持的格式

ssl_protocols SSLv2 SSLv3 TLSv1.2;

ssl_ciphers HIGH:!aNULL:!MD5; # 密码加密方式

ssl_prefer_server_ciphers on; # 依赖SSLv3和TLSv1协议的服务器密码将优先于客户端密码

# 定义首页索引目录和名称

location / {

root /usr/share/nginx/html;

index index.html index.htm;

}

#重定向错误页面到 /50x.html

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

}

三、在/home/nginx/ssl目录生成证书

openssl req -new -x509 -newkey rsa:4096 -keyout server.key -out server.crt

四、重启docker容器

docker start wx-nginx

参考网站:https://www.jianshu.com/p/5f9bd492f186

docker下安装nginx并实现https访问的更多相关文章

  1. docker下安装nginx,启动ngixn,修改nginx配置等--超详细

    1.获取nginx版本 docker中nginx版本信息:https://hub.docker.com/_/nginx?tab=tags&page=1&ordering=last_up ...

  2. Ubuntu Nginx下配置网站ssl实现https访问

    最近在看  HTTP权威指南   看到介绍了HTTPS的ssl,自己就动手测试了下,将步骤记录下 HTTPS简介 什么是HTTPS?百科是这样解释的.HTTPS(全称:Hyper Text Trans ...

  3. 在Docker下部署Nginx

    在Docker下部署Nginx 在Docker下部署Nginx,包括: 部署一个最简单的Nginx,可以通过80端口访问默认的网站 设置记录访问和错误日志的路径 设置静态网站的路径 通过proxy_p ...

  4. Ubuntu下安装Nginx,PHP5(及PHP-FPM),MySQL

    .简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多 ...

  5. windwos下安装nginx(转)

    1.windows下安装Nginx1.1 从nginx官网下载相应的安装包:http://nginx.org/  1.2 建议下载  下载稳定版 1.3 解压到相应的目录,比如我是e盘 然后修改目录名 ...

  6. 基于kail的docker下安装sqli-labs

    后面的关卡涉及到转码问题,比如空格,在Windows中会受到限制,比如24关的文件重命名问题,所以在这记录下在docker下安装sqli-labs,在linux下运行就不会受到限制. 参考链接:htt ...

  7. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  8. Linux centos7环境下安装Nginx

    Linux centos7环境下安装Nginx的步骤详解 1.    首先到Nginx官网下载Nginx安装包 http://nginx.org/download/nginx-1.5.9.tar.gz ...

  9. 学习笔记(1)centos7 下安装nginx

    学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...

随机推荐

  1. 用Queue控制python多线程并发数量

    python多线程如果不进行并发数量控制,在启动线程数量多到一定程度后,会造成线程无法启动的错误. 下面介绍用Queue控制多线程并发数量的方法(python3). # -*- coding: utf ...

  2. 解决:一个项目中写多个包含main函数的源文件并分别调试运行

    自己在学c++的时候,一个项目中的多个cpp文件默认不允许多个main函数的出现,但是通过选项操作能够指定单个cpp文件进行运行,如下: 1.此时我就想运行第二个cpp文件,我们只需要把其他的两个右键 ...

  3. python - django 执行数据库迁移后数据库并未更新 和 InternalError: (1054, u"Unknown column 'xxx' in 'field list'")问题

    一.发生情况:当你修改数据库结构后进行 python manage.py makemigrations 和 python manage.py migrate 后发现控制台会给你返回一个下面的结果,但是 ...

  4. TED演讲:真正拉开你与周围人之间差距的,是自学能力https://www.bilibili.com/video/av65904878/?spm_id_from=333.788.videocard.1

    conference.summitcouplecapital.topvillageperfecthonestpreciselyEurope.scholarshipforcefalsefoxrealit ...

  5. LOJ P10016 灯泡 题解

    每日一题 day50 打卡 Analysis 用初中学的相似推一波式子,再用三分一搞就好了. #include<iostream> #include<cstdio> #incl ...

  6. Windbg的主题---Theme

    主题是预配置的windbg工作区,其中包含调试信息窗口的有用配置.任何主题都可以保存为基本工作区.Windows调试工具包中的主题作为一组注册表文件(扩展名为.reg)提供.当您积累更多的调试会话时, ...

  7. jmxtrans docker-compose 运行

    以下是一个简单的demo,使用jmxtrans 进行jmx 指标的处理,项目使用docker-compose 运行 同时写入数据到graphite 环境准备 docker-compose文件   ve ...

  8. C# VS 调试 动态加载的 DLL

    原文:https://www.cnblogs.com/DasonKwok/p/10510218.html 在这篇文章的底部,有提供示例的Demo,可以参考一下哦,拿来直接就可以运行. 说明: 编译类库 ...

  9. Jedis:Exception in thread "main" java.lang.VerifyError: Bad type on operand stack

    Exception in thread "main" java.lang.VerifyError: Bad type on operand stackException Detai ...

  10. sublime text 3 安装、添加命令行启动、汉化、注册码

    1. 安装sublime: 下载:http://www.sublimetext.com/3 添加命令行启动:设置环境变量->计算机->右键属性->高级系统设置->环境变量-&g ...