可根据配置文件变化自动reload的openresty docker镜像制作
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,1. 创建工作目录mkdir openresty && cd openresty2. 编写使用inotify监控配置文件变化并自动reload的脚本auto-reload.sh:#!/bin/shin
千家信息网最后更新 2025年02月04日可根据配置文件变化自动reload的openresty docker镜像制作
1. 创建工作目录
mkdir openresty && cd openresty
2. 编写使用inotify监控配置文件变化并自动reload的脚本auto-reload.sh:
#!/bin/shinotifywait -e modify,move,create,delete -mr --timefmt '%d/%m/%y %H:%M' --format '%T %f %e' \/usr/local/openresty/nginx/conf/conf.d | while read event; do echo "$event" /usr/local/openresty/nginx/sbin/nginx -s reloaddone
3. 编写镜像启动脚本start.sh:
#!/bin/bash/usr/bin/openresty -g "daemon off;" &/auto-reload.sh
4. 编写配置文件nginx.conf:
user nobody;worker_processes auto;#worker_cpu_affinity 01 10;worker_rlimit_nofile 65535;events { use epoll; worker_connections 60000;}http { include mime.types; default_type application/octet-stream; tcp_nodelay on; log_format main '$status $host $remote_addr $request_time - ' '$upstream_status $upstream_addr $upstream_response_time ' '[$time_local] $request ' '$bytes_sent $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /usr/local/openresty/nginx/logs/access.log main; error_log /usr/local/openresty/nginx/logs/error.log; log_not_found off; sendfile on; keepalive_timeout 15; server_names_hash_bucket_size 4096; client_header_buffer_size 16k; large_client_header_buffers 4 64k; gzip on; gzip_http_version 1.0; gzip_proxied expired no-cache no-store private auth; gzip_types text/plain application/x-javascript text/css application/xml text/javascript; gzip_min_length 1000; gzip_comp_level 5; gzip_buffers 4 8k; gzip_disable "MSIE [1-6]\.(?!.*SV1)"; include localenv.d/*.conf; include env.d/*.conf; include conf.d/*.backend.cfg; include conf.d/*.server.cfg; server { listen 80; server_name localhost; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #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; } }}
5. 编写dockerfile:
FROM centos:7.6.1810 MAINTAINER openresty1.15.8.2ADD auto-reload.sh auto-reload.shADD start.sh start.shRUN yum -y install epel-release && yum install inotify-tools -y && yum install -y yum-utils && yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo && yum install -y openresty && yum clean all && chmod +x start.sh && chmod +x auto-reload.shADD nginx.conf /usr/local/openresty/nginx/conf/nginx.confEXPOSE 80EXPOSE 443CMD ["./start.sh"]
6. 执行docker build命令:
docker build -t openresty:1.15.8.2 -f ./dockerfile .
上述命令执行完后,就可以通过docker images看到刚制作好的openresty镜像了
7. 验证,用以下命令运行容器:
docker run -itd -p 8080:80 -v /data/logs:/usr/local/openresty/nginx/logs -v /data/nginx/conf.d:/usr/local/openresty/nginx/conf/conf.d openresty:1.15.8.2
在宿主机目录/data/nginx/conf.d下新增或修改配置文件,容器中的openresty会自动reload,镜像制作成功。
文件
镜像
配置
命令
制作
容器
目录
脚本
变化
成功
可以通过
宿主
宿主机
用以
工作
监控
运行
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
浙江应用刀片服务器厂家
乌鲁木齐网络安全公司
数据库 约束的意思
安阳泽润网络技术公司
网路安全市场规模网络安全
java获取数据库空值
sql数据库新建表并赋值
新丰租房软件开发
数据库应用与设计任务驱动教程
上海拜富互联网科技
网络安全教育张莉
日照互联网科技公司排名
浪潮人工智能服务器
软件开发发票税率是多少钱
七牛云服务器优缺点
网络安全攻击主要分为
建网站需要买服务器吗
航海王启航 服务器
社会治理网络安全现状分析
网络安全综合能力测评
黄梅容易就业的计算机软件开发
软件开发c 笔试题
数据库查询带感叹号
山东移动城管软件开发公司
sql数据库新建表并赋值
快递互联网和科技的发展
无线网络技术导论试卷
数据库输入不正确怎么办
服务器安全策略怎么学
9网络安全手抄报