This commit is contained in:
chenc 2023-11-02 14:32:56 +08:00
parent e2ca8a785f
commit 84028baa64
48 changed files with 1406649 additions and 35 deletions

View File

@ -6,17 +6,10 @@ NET_SUBNET=10.12.25
################ Elasticsearch ######################
ELK_VERSION=7.17.10
ELASTICSEARCH_HOST_HTTP_PORT=9200
################ KIBANA ######################
KIBANA_ELASTICSEARCH_USER=elastic
KIBANA_ELASTICSEARCH_PASSWORD=qq1458513
ELK_ELASTIC_PASSWD=qq1458513
################# WEB目录 ######################
WWWROOT_PATH="/data"
################# MYSQL5.7 #######################
MYSQL_ROOT_PASSWD_57=qq1458513
MYSQL_PORT_57=3306
WWWROOT_PATH="./www"
################# NodeJS ##################
NODEJS_VERSION="18.17.0"

View File

@ -39,6 +39,7 @@ services:
# - discovery.seed_hosts=
# - cluster.initial_master_nodes=cc-docker-node
- discovery.type=single-node
- ELASTIC_PASSWD=${ELK_ELASTIC_PASSWD:-qq1458513}
volumes:
- "./elasticsearch/data/${ELK_VERSION:-7.17.7}:/usr/share/elasticsearch/data:rw"
- "./elasticsearch/plugins/${ELK_VERSION:-7.17.7}:/usr/share/elasticsearch/plugins"
@ -90,6 +91,12 @@ services:
- "./redis/data:/data/db"
- "./logs/redis:/data/logs"
command: ["redis-server","/etc/redis/redis.conf"]
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 1s
timeout: 3s
retries: 30
start-period: 30s
networks:
aix-docker-cc:
ipv4_address: ${NET_SUBNET:-10.12.25}.3
@ -105,6 +112,12 @@ services:
networks:
aix-docker-cc:
ipv4_address: ${NET_SUBNET:-10.12.25}.73
healthcheck:
test: ["CMD", "curl", "--fail","http://${NET_SUBNET:-10.12.25}.1/ping_73"]
interval: 1s
timeout: 3s
retries: 30
start-period: 30s
depends_on:
- elasticsearch
- redis
@ -122,6 +135,12 @@ services:
networks:
aix-docker-cc:
ipv4_address: ${NET_SUBNET:-10.12.25}.74
healthcheck:
test: ["CMD", "curl", "--fail","http://${NET_SUBNET:-10.12.25}.1/ping_74"]
interval: 1s
timeout: 3s
retries: 30
start-period: 30s
depends_on:
- elasticsearch
- redis
@ -137,6 +156,12 @@ services:
networks:
aix-docker-cc:
ipv4_address: ${NET_SUBNET:-10.12.25}.81
healthcheck:
test: ["CMD", "curl", "--fail","http://${NET_SUBNET:-10.12.25}.1/ping_81"]
interval: 1s
timeout: 3s
retries: 30
start-period: 30s
depends_on:
- elasticsearch
- redis
redis:
condition: service_healthy

View File

@ -0,0 +1,13 @@
#!/bin/bash
elastic_pass=$1
response="$(curl -u "elastic:${elastic_pass}" http://localhost:9200/_cluster/health)"
health="$(echo "${response}" | jq -r '.status')"
if [ "${health}" == "green" ]; then
exit 0
else
exit 1
fi

Binary file not shown.

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>IK Analyzer 扩展配置</comment>
<!--用户可以在这里配置自己的扩展字典 -->
<entry key="ext_dict"></entry>
<!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords"></entry>
<!--用户可以在这里配置远程扩展字典 -->
<!-- <entry key="remote_ext_dict">words_location</entry> -->
<!--用户可以在这里配置远程扩展停止词字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,31 @@
也
使

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
使

View File

@ -0,0 +1,316 @@
世纪
位数
像素
克拉
公亩
公克
公分
公升
公尺
公担
公斤
公里
公顷
分钟
分米
加仑
千克
千米
厘米
周年
小时
平方
平方公尺
平方公里
平方分米
平方厘米
平方码
平方米
平方英寸
平方英尺
平方英里
平米
年代
年级
月份
毫升
毫米
毫克
海里
点钟
盎司
秒钟
立方公尺
立方分米
立方厘米
立方码
立方米
立方英寸
立方英尺
英亩
英寸
英尺
英里
阶段

View File

@ -0,0 +1,33 @@
a
an
and
are
as
at
be
but
by
for
if
in
into
is
it
no
not
of
on
or
such
that
the
their
then
there
these
they
this
to
was
will
with

View File

@ -0,0 +1,37 @@
斯基
维奇
诺夫

View File

@ -0,0 +1,131 @@
丁
万俟
上官
东方
令狐
仲孙
公冶
公孙
公羊
单于
司徒
司空
司马
夏侯
太叔
宇文
宗政
尉迟
慕容
欧阳
淳于
澹台
濮阳
申屠
皇甫
诸葛
赫连
轩辕
钟离
长孙
闻人
闾丘
鲜于

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,56 @@
# Elasticsearch plugin descriptor file
# This file must exist as 'plugin-descriptor.properties' at
# the root directory of all plugins.
#
# A plugin can be 'site', 'jvm', or both.
#
### example site plugin for "foo":
#
# foo.zip <-- zip file for the plugin, with this structure:
# _site/ <-- the contents that will be served
# plugin-descriptor.properties <-- example contents below:
#
# site=true
# description=My cool plugin
# version=1.0
#
### example jvm plugin for "foo"
#
# foo.zip <-- zip file for the plugin, with this structure:
# <arbitrary name1>.jar <-- classes, resources, dependencies
# <arbitrary nameN>.jar <-- any number of jars
# plugin-descriptor.properties <-- example contents below:
#
# jvm=true
# classname=foo.bar.BazPlugin
# description=My cool plugin
# version=2.0.0-rc1
# elasticsearch.version=2.0
# java.version=1.7
#
### mandatory elements for all plugins:
#
# 'description': simple summary of the plugin
description=IK Analyzer for Elasticsearch
#
# 'version': plugin's version
version=7.17.13
#
# 'name': the plugin name
name=analysis-ik
#
# 'classname': the name of the class to load, fully-qualified.
classname=org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin
#
# 'java.version' version of java the code is built against
# use the system property java.specification.version
# version string must be a sequence of nonnegative decimal integers
# separated by "."'s and may have leading zeros
java.version=1.8
#
# 'elasticsearch.version' version of elasticsearch compiled against
# You will have to release a new version of the plugin for each new
# elasticsearch release. This version is checked when the plugin
# is loaded so Elasticsearch will refuse to start in the presence of
# plugins with the incorrect elasticsearch.version.
elasticsearch.version=7.17.13

View File

@ -0,0 +1,4 @@
grant {
// needed because of the hot reload functionality
permission java.net.SocketPermission "*", "connect,resolve";
};

Binary file not shown.

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>IK Analyzer 扩展配置</comment>
<!--用户可以在这里配置自己的扩展字典 -->
<entry key="ext_dict"></entry>
<!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords"></entry>
<!--用户可以在这里配置远程扩展字典 -->
<!-- <entry key="remote_ext_dict">words_location</entry> -->
<!--用户可以在这里配置远程扩展停止词字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,31 @@
也
使

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
使

View File

@ -0,0 +1,316 @@
世纪
位数
像素
克拉
公亩
公克
公分
公升
公尺
公担
公斤
公里
公顷
分钟
分米
加仑
千克
千米
厘米
周年
小时
平方
平方公尺
平方公里
平方分米
平方厘米
平方码
平方米
平方英寸
平方英尺
平方英里
平米
年代
年级
月份
毫升
毫米
毫克
海里
点钟
盎司
秒钟
立方公尺
立方分米
立方厘米
立方码
立方米
立方英寸
立方英尺
英亩
英寸
英尺
英里
阶段

View File

@ -0,0 +1,33 @@
a
an
and
are
as
at
be
but
by
for
if
in
into
is
it
no
not
of
on
or
such
that
the
their
then
there
these
they
this
to
was
will
with

View File

@ -0,0 +1,37 @@
斯基
维奇
诺夫

View File

@ -0,0 +1,131 @@
丁
万俟
上官
东方
令狐
仲孙
公冶
公孙
公羊
单于
司徒
司空
司马
夏侯
太叔
宇文
宗政
尉迟
慕容
欧阳
淳于
澹台
濮阳
申屠
皇甫
诸葛
赫连
轩辕
钟离
长孙
闻人
闾丘
鲜于

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,56 @@
# Elasticsearch plugin descriptor file
# This file must exist as 'plugin-descriptor.properties' at
# the root directory of all plugins.
#
# A plugin can be 'site', 'jvm', or both.
#
### example site plugin for "foo":
#
# foo.zip <-- zip file for the plugin, with this structure:
# _site/ <-- the contents that will be served
# plugin-descriptor.properties <-- example contents below:
#
# site=true
# description=My cool plugin
# version=1.0
#
### example jvm plugin for "foo"
#
# foo.zip <-- zip file for the plugin, with this structure:
# <arbitrary name1>.jar <-- classes, resources, dependencies
# <arbitrary nameN>.jar <-- any number of jars
# plugin-descriptor.properties <-- example contents below:
#
# jvm=true
# classname=foo.bar.BazPlugin
# description=My cool plugin
# version=2.0.0-rc1
# elasticsearch.version=2.0
# java.version=1.7
#
### mandatory elements for all plugins:
#
# 'description': simple summary of the plugin
description=IK Analyzer for Elasticsearch
#
# 'version': plugin's version
version=7.17.14
#
# 'name': the plugin name
name=analysis-ik
#
# 'classname': the name of the class to load, fully-qualified.
classname=org.elasticsearch.plugin.analysis.ik.AnalysisIkPlugin
#
# 'java.version' version of java the code is built against
# use the system property java.specification.version
# version string must be a sequence of nonnegative decimal integers
# separated by "."'s and may have leading zeros
java.version=1.8
#
# 'elasticsearch.version' version of elasticsearch compiled against
# You will have to release a new version of the plugin for each new
# elasticsearch release. This version is checked when the plugin
# is loaded so Elasticsearch will refuse to start in the presence of
# plugins with the incorrect elasticsearch.version.
elasticsearch.version=7.17.14

View File

@ -0,0 +1,4 @@
grant {
// needed because of the hot reload functionality
permission java.net.SocketPermission "*", "connect,resolve";
};

View File

@ -78,6 +78,27 @@ lua_shared_dict my_limit_req_store1 100m;
stub_status on;
access_log off;
}
location ~ ^/(status_73|ping_73)$ {
access_log off;
fastcgi_pass php73:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
location ~ ^/(status_74|ping_74)$ {
access_log off;
fastcgi_pass php74:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
location ~ ^/(status_81|ping_81)$ {
access_log off;
fastcgi_pass php81:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
location /aix-agent {
proxy_pass http://10.12.25.1:10115/;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass php81:9000;
#fastcgi_pass unix:/dev/shm/php-cgi.sock;

View File

@ -1,30 +1,70 @@
server {
listen 80;
server_name *.cc.dev.jsaix.com;
set $base_path "/data/wwwroot/";
set $path "default";
set_by_lua $set_root_path '
local host = ngx.var.host or ngx.var.uri
ngx.var.path = ngx.re.gsub(host,"(.cc.dev.jsaix.com)","")
';
access_log /data/wwwlogs/cc.dev.jsaix.com_nginx.log combined;
error_log /data/wwwlogs/error.cc.dev.jsaix.com_nginx.log;
listen [::]:80;
# listen 443 ssl http2;
# listen [::]:443 ssl http2;
# ssl_certificate /usr/local/openresty/nginx/conf/vhost/ssl/gateway.jsaix.cn.crt;
# ssl_certificate_key /usr/local/openresty/nginx/conf/vhost/ssl/gateway.jsaix.cn.key;
# ssl_protocols TLSv1.2 TLSv1.3;
# ssl_prefer_server_ciphers on;
# ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305;
# ssl_session_timeout 10m;
# ssl_session_cache builtin:1000 shared:SSL:10m;
# ssl_session_tickets off;
## curl https://ssl-config.mozilla.org/ffdhe2048.txt > /usr/local/openresty/nginx/conf/vhost/ssl/dhparam.pem
# ssl_dhparam /usr/local/openresty/nginx/conf/vhost/ssl/dhparam.pem;
# ssl_buffer_size 1400;
# add_header Strict-Transport-Security "max-age=63072000" always;
# ssl_stapling on;
# ssl_stapling_verify on;
# ssl_trusted_certificate /usr/local/openresty/nginx/conf/vhost/ssl/full_chain_rsa.crt;
# resolver 223.5.5.5;
# add_header X-Xss-Protection "1; mode=block";
# add_header X-Content-Type-Options nosniff;
# if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
server_name *.abchen.net;
access_log /data/wwwlogs/abchen.net_nginx.log combined;
error_log /data/wwwlogs/error.abchen.net_nginx.log;
index index.html index.htm index.php;
root $base_path$path/public;
root /data/wwwroot/default;
include /usr/local/openresty/nginx/conf/rewrite/laravel.conf;
#error_page 404 /404.html;
#error_page 502 /502.html;
location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv|mp4)$ {
valid_referers none blocked *.abchen.net;
if ($invalid_referer) {
return 403;
}
}
# location /wss {
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# # proxy_set_header Connection $connection_upgrade;
# # add_header Front-End-Https on;
# # add_header 'Access-Control-Allow-Methods' 'GET,POST';
# # add_header 'Access-Control-Allow-Origin' $http_origin;
# # add_header 'Access-Control-Allow-Credentials' 'true';
# # add_header 'Access-Control-Allow-Headers' 'Accept,Authorization,Cache-Control,Content-Type,DNT,If-Modified-Since,Keep-Alive,Origin,User-Agent,X-Mx-ReqToken,X-Requested-With';
# include proxy.conf
# proxy_pass http://php81:22349;
# }
location ~ [^/]\.php(/|$) {
fastcgi_pass php73:9000;
fastcgi_pass php81:9000;
#fastcgi_pass unix:/dev/shm/php73-cgi.sock;
fastcgi_index index.php;
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";
include fastcgi.conf;
}
location ~ .*\.(?i)(txt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx)$ {
add_header Content-Disposition attachment;
}
location ~* ^/(storage|attachments|upload)/.*\.(php|php5)$ {
deny all;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
expires 30d;
access_log off;

View File

@ -235,7 +235,7 @@ pm.max_spare_servers = 25
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;pm.status_path = /status
pm.status_path = /status_73
; The ping URI to call the monitoring page of FPM. If this value is not set, no
; URI will be recognized as a ping page. This could be used to test from outside
@ -247,12 +247,12 @@ pm.max_spare_servers = 25
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;ping.path = /ping
ping.path = /ping_73
; This directive may be used to customize the response of a ping request. The
; response is formatted as text/plain with a 200 response code.
; Default Value: pong
;ping.response = pong
ping.response = pong
; The access log file
; Default: not set

View File

@ -235,7 +235,7 @@ pm.max_spare_servers = 3
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;pm.status_path = /status
pm.status_path = /status_74
; The ping URI to call the monitoring page of FPM. If this value is not set, no
; URI will be recognized as a ping page. This could be used to test from outside
@ -247,12 +247,12 @@ pm.max_spare_servers = 3
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;ping.path = /ping
ping.path = /ping_74
; This directive may be used to customize the response of a ping request. The
; response is formatted as text/plain with a 200 response code.
; Default Value: pong
;ping.response = pong
ping.response = pong
; The access log file
; Default: not set

View File

@ -244,7 +244,7 @@ pm.max_spare_servers = 25
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;pm.status_path = /status
pm.status_path = /status_81
; The address on which to accept FastCGI status request. This creates a new
; invisible pool that can handle requests independently. This is useful
@ -272,12 +272,12 @@ pm.max_spare_servers = 25
; anything, but it may not be a good idea to use the .php extension or it
; may conflict with a real PHP file.
; Default Value: not set
;ping.path = /ping
ping.path = /ping_81
; This directive may be used to customize the response of a ping request. The
; response is formatted as text/plain with a 200 response code.
; Default Value: pong
;ping.response = pong
ping.response = pong
; The access log file
; Default: not set

View File

@ -1,7 +1,7 @@
#/bin/sh
pushd /data
if ! command -v docker >/dev/null 2>&1 ; then
wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz
wget https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-20.10.9.tgz
tar -zxvf docker-20.10.9.tgz
mv docker/* /usr/bin/
groupadd docker