1. HTTP3W博客首页
  2. 技术
  3. docker

docker部署H5页面与https访问设置

今天遇到这样一个需求,公司需要在一台服务器上快速部署一套静态的H5页面,并能够通过设置SSL证书进行https方式直接访问页面资源;所以我的静态资源是基于nginx进行访问和配置,具体操作如下:

1、环境准备

示例服务器为 centos7.6、安装容器,docker\docker-compose 、nginx镜像

docker安装示例参考:点我

为了快速下载镜像,需要配置阿里云容器加速器,位置如下,主要通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

docker部署H5页面与https访问设置

2、申请证书文件

首先我们需要准备好已经申请的证书文件,阿里云申请免费证书方式点我传送

3、静态资源文件

准备我们要部署的静态资源文件,如dsk文件夹

4、上传资源文件和上传证书

我的nginx安装目录是/opt/nginx,所以进入该目录命令

cd /opt/nginx

在该目录下创建文件docker-compose.yml,内容如下:

version: '3.7'
services:
  nginx:
    container_name: nginx
    image: nginx:1.18.0-alpine
    restart: always
    privileged: true
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./data:/usr/share/nginx/html 
    environment:
      - TZ=Asia/Shanghai
    ports:
      - 80:80
      - 4434:4434
      - 443:443

在该目录下创建nginx.conf文件,内容如下

user root root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.dashengkui.cc;
        charset utf-8; 
        location / { 
               root   /usr/share/nginx/html/dsk; #html访问路径
               index index.html index.htm; #html文件名称
             }
    }
}

该目录下,建立data文件夹,用于上传静态资源文件夹dsk

#上传资源
# cd /opt/nginx/data
# rz

docker-compose启动成功后,从宿主机上传证书文件到容器/etc/nginx目录,命令如下

# docker cp /opt/nginx/ssl_certs/www.dashengkui.cc.key 容器id:/etc/nginx 
# docker cp /opt/nginx/ssl_certs/www.dashengkui.cc.pem 容器id:/etc/nginx 

最后替换nginx.conf文件内容,如下

user root root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.dashengkui.cc;
        charset utf-8; 
        rewrite ^(.*) https://$server_name$1 permanent;
    }
    server {
	    listen       443 ssl;
	    server_name  www.dashengkui.cc;
	    ssl_certificate      /etc/nginx/www.dashengkui.cc.pem;
	    ssl_certificate_key  /etc/nginx/www.dashengkui.cc.key;
	    #ssl_session_cache    shared:SSL:1m;
	    ssl_session_timeout  5m;
	    ssl_ciphers  HIGH:!aNULL:!MD5;
	    ssl_prefer_server_ciphers  on;
	    location / {
	        root   /usr/share/nginx/html/dsk;
	        index  index.html index.htm;
	    }
	}
}

5、重启docker

# docker-compose stop
# docker-compose up -d

6、访问域名

www.dashengkui.cc

docker部署H5页面与https访问设置

1、原创文章,作者:诺米,如若转载,请注明出处:https://www.http3w.com/archives/311

2、本站内容若有雷同从属巧合,若侵犯了您的权益,请联系本站删除,E-mail: wtao219@qq.com

发表评论

您的电子邮箱地址不会被公开。

联系我们

254007489

在线咨询:点击这里给我发消息

邮件:wtao219@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息