验章系统-docker-compose部署
如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频
1.在192.168.171.128上安装基础服务
1)在192.168.171.128上安装docker:
[root@localhost ~]# docker info
Client:
Debug Mode: false
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 19.03.2
2)将基础服务的相关镜像、配置文件、脚本打包上传到服务器的/data目录,自带了docker-compose安装
[root@localhost data]# ls docker-compose-verify-base.tar.gz
docker-compose-verify-base.tar.gz
[root@localhost data]# tar -zxf docker-compose-verify-base.tar.gz
[root@localhost data]# cd docker-compose-verify-base
[root@localhost docker-compose-verify-base]# ls
conf images registry yaml_base
[root@localhost docker-compose-verify-base]# ls conf/
my.cnf nginx.conf redis.conf server.crt server.key
[root@localhost docker-compose-verify-base]# ls images/
centos7.2.1511.tar docker-compose mongo.tar mysql5.7.27.tar nginx1.15.9-0711.tar redis4.0.10.tar sealsm2base.tar zip-3.0-11.el7.x86_64.rpm
[root@localhost docker-compose-verify-base]# ls registry/
Dockerfile registry-server.jar
[root@localhost docker-compose-verify-base]# ls yaml_base/
base_init.sh docker-compose.yaml
[root@localhost docker-compose-verify-base]# cat yaml_base/base_init.sh
#!/bin/bash
#2019-12-19
images=/data/docker-compose-verify-base/images
conf=/data/docker-compose-verify-base/conf
rpm -ivh /data/docker-compose-verify-base/images/zip-3.0-11.el7.x86_64.rpm
docker load -i $images/nginx1.15.9-0711.tar
mkdir -p /data/nginx/conf/
mkdir -p /data/nginx/logs
mkdir -p /data/nginx/registry
mkdir -p /data/nginx/users
mkdir -p /data/nginx/ssl
cp $conf/nginx.conf /data/nginx/conf
cp $conf/server.crt /data/nginx/ssl/
cp $conf/server.key /data/nginx/ssl/
docker load -i $images/mysql5.7.27.tar
mkdir -p /data/mysql/conf
mkdir -p /data/mysql/data
mkdir -p /data/mysql/bak
cp $conf/my.cnf /data/mysql/conf/
docker load -i $images/redis4.0.10.tar
mkdir -p /data/redis/conf/
cp $conf/redis.conf /data/redis/conf
docker load -i $images/mongo.tar
mkdir -p /data/mongodb_docker/db
docker load -i $images/sealsm2base.tar
cp $images/docker-compose /usr/bin/
chmod 755 /usr/bin/docker-compose
#cp $images/docker-compose /usr/local/bin/
#chmod 755 /usr/local/bin/docker-compose
[root@localhost docker-compose-verify-base]# cat yaml_base/docker-compose.yaml
version: '3.3' # compose-file的语法版本
services: # 定义服务
nginx:
image: docker.io/nginx:1.15.9
ports:
- "80:80"
- "443:443"
container_name: nginx
restart: always
network_mode: "host"
volumes:
- /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:rw
- /data/nginx/logs:/etc/nginx/logs:rw
- /data/nginx/registry:/etc/nginx/registry:rw
- /data/nginx/users:/etc/nginx/users:rw
- /data/nginx/ssl:/data/ssl:rw
mysql:
image: docker.io/mysql:5.7.27
ports:
- "3306:3306"
container_name: mysql
restart: always
network_mode: "host"
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: Gm02_prd8!
volumes:
- /data/mysql/conf/my.cnf:/etc/my.cnf:rw
- /data/mysql/data:/var/lib/mysql:rw
- /data/mysql/bak:/data/bak:rw
#上面init目录不但能映射,而且能自动执行映射的初始化sql语句
redis:
image: gmprd.baiwang-inner.com/redis:4.0.10
ports:
- "6379:6379"
container_name: redis
restart: always
network_mode: "host"
volumes:
- /data/redis/conf/redis.conf:/opt/redis/conf/redis.conf:rw
mongo:
image: mongo
ports:
- "27017:27017"
container_name: mongo
restart: always
network_mode: "host"
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin123
volumes:
- /data/mongodb_docker/db:/data/db:rw
registry:
build: /data/docker-compose-verify-base/registry
image: registry:latest
ports:
- "8889:8889"
container_name: registry
restart: always
network_mode: "host"
#volumes:
# - /data/redis/conf/redis.conf:/opt/redis/conf/redis.conf:rw
[root@localhost docker-compose-verify-base]# cd yaml_base/
[root@localhost yaml_base]# sh base_init.sh #执行脚本初始化
[root@localhost yaml_base]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.7.27 383867b75fd2 6 months ago 373MB
mongo latest ad90ce14b74e 9 months ago 411MB
nginx 1.15.9 881bd08c0b08 12 months ago 109MB
sealsm2-2/base latest 4458abb536ae 12 months ago 527MB
gmprd.baiwang-inner.com/redis 4.0.10 f713a14c7f9b 13 months ago 425MB
[root@localhost yaml_base]# docker-compose up -d #-d后台启动,停止:docker-compose down
[root@localhost yaml_base]# docker-compose ps
Name Command State Ports
---------------------------------------------------------
mongo docker-entrypoint.sh mongod Up
mysql docker-entrypoint.sh --def ... Up
nginx nginx -g daemon off; Up
redis redis-server /opt/redis/co ... Up
registry java -Dspring.profiles.act ... Up
[root@localhost yaml_base]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
65cdd3118b73 mysql:5.7.27 "docker-entrypoint.s…" 36 seconds ago Up 33 seconds mysql
d484343e4fce gmprd.baiwang-inner.com/redis:4.0.10 "redis-server /opt/r…" 36 seconds ago Up 34 seconds redis
86ca548428a8 registry:latest "java -Dspring.profi…" 36 seconds ago Up 35 seconds registry
1a655b41cb52 nginx:1.15.9 "nginx -g 'daemon of…" 36 seconds ago Up 33 seconds nginx
4eb4cce833c6 mongo "docker-entrypoint.s…" 36 seconds ago Up 34 seconds mongo
验证服务:
[root@localhost yaml_base]# netstat -anput |grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3352/nginx: master
[root@localhost yaml_base]# netstat -anput |grep 8889
tcp6 0 0 :::8889 :::* LISTEN 3229/java
[root@localhost yaml_base]# docker exec -it mysql mysql -uroot -pGm02_prd8!
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
mysql> quit
[root@localhost yaml_base]# docker exec -it redis redis-cli -a GmRes_prd10!
127.0.0.1:6379> KEYS *
127.0.0.1:6379> quit
[root@localhost yaml_base]# docker exec -it mongo mongo -uadmin -padmin123
> show dbs;
admin 0.000GB
config 0.000GB
local 0.000GB
> use webviewer;
switched to db webviewer
> db;
webviewer
> quit()
[root@localhost data]# cd
上传sql数据文件:
[root@localhost ~]# ls all.sql
all.sql
[root@localhost ~]# docker cp all.sql mysql:/opt
[root@localhost ~]# docker exec -it mysql bash
root@localhost:/# ls /opt/
all.sql
root@localhost:/# mysql -uroot -pGm02_prd8!
mysql> source /opt/all.sql;
mysql> show databases;
+---------------------+
| Database |
+---------------------+
| information_schema |
| certificate_manager |
| mysql |
| performance_schema |
| seal_manager_prd |
| sys |
+---------------------+
mysql> use certificate_manager;
mysql> show tables;
+---------------------------------+
| Tables_in_certificate_manager |
+---------------------------------+
| apply_main |
| authority_info |
| ca_apply_info |
| certificate_apply |
| data_dictionary |
| ga_data_info |
| liu_info |
| log_operatetype |
| manager_city |
| manager_county |
| manager_info |
| manager_province |
| operate_log |
| platform_sys_asyn_task |
| platform_sys_asyn_task2 |
| platform_sys_asyn_tasklog |
| platform_sys_asyn_tasklog2 |
| platform_sys_param |
| police_record_seal_failure_info |
| police_record_seal_info |
| police_record_task_info |
| role_authority_info |
| role_info |
| seal_unique_code_info |
| sub_system_info |
| sys_modules |
| userinfo |
+---------------------------------+
mysql> use seal_manager_prd;
mysql> show tables;
+----------------------------+
| Tables_in_seal_manager_prd |
+----------------------------+
| act_evt_log |
| act_ge_bytearray |
| act_ge_property |
| act_hi_actinst |
| act_hi_attachment |
| act_hi_comment |
| act_hi_detail |
| act_hi_identitylink |
| act_hi_procinst |
| act_hi_taskinst |
| act_hi_varinst |
| act_id_group |
| act_id_info |
| act_id_membership |
| act_id_user |
| act_procdef_info |
| act_re_deployment |
| act_re_model |
| act_re_procdef |
| act_ru_event_subscr |
| act_ru_execution |
| act_ru_identitylink |
| act_ru_job |
| act_ru_task |
| act_ru_variable |
| bs_stamp_cfg |
| ca_agency |
| ca_apply_info |
| ca_auth_area |
| ca_history |
| dic_useunit_type |
| operate_log |
| ps_apply_config |
| ps_apply_info |
| ps_area |
| ps_business |
| ps_business_businesstype |
| ps_business_flow |
| ps_business_flow_his |
| ps_business_flow_template |
| ps_business_link |
| ps_business_seal |
| ps_business_temp |
| ps_business_type |
| ps_ca_sync |
| ps_department |
| ps_department_log |
| ps_document |
| ps_ip_address |
| ps_manage_log |
| ps_menu |
| ps_menu_permission |
| ps_parameter |
| ps_perm_set_rel |
| ps_permission |
| ps_police_data |
| ps_position_dict |
| ps_privilege_tree |
| ps_role |
| ps_role_menu |
| ps_role_permission |
| ps_seal |
| ps_seal_dept |
| ps_seal_import_batch |
| ps_seal_log |
| ps_seal_operate_log |
| ps_seal_permission |
| ps_seal_privilege |
| ps_seal_status_sync |
| ps_seal_template |
| ps_sign_node |
| ps_site |
| ps_site_api |
| ps_sync_log |
| ps_template |
| ps_template_image |
| ps_user |
| ps_user_area |
| ps_user_dept |
| ps_user_ext |
| ps_user_log |
| ps_user_permission |
| ps_user_role |
+----------------------------+
mysql> quit
mysql> grant all on *.* to 'Use_Prd'@'%' identified by 'GmUse21_Prd10!';
mysql> flush privileges;
root@localhost:/# mysql -uUse_Prd -pGmUse21_Prd10!
mysql> quit
root@localhost:/# exit
3)安装nfs:
[root@localhost ~]# yum -y install nfs-utils #为了共享nas
[root@localhost ~]# vim /etc/exports
[root@localhost ~]# cat /etc/exports
/data/nas *(rw,no_root_squash)
[root@localhost ~]# mkdir /data/nas
[root@localhost ~]# exportfs -rv
[root@localhost ~]# systemctl start nfs
[root@localhost ~]# systemctl status nfs
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; vendor preset: disabled)
Drop-In: /run/systemd/generator/nfs-server.service.d
└─order-with-mounts.conf
Active: active (exited) since Wed 2020-03-18 10:03:41 CST; 6s ago
[root@localhost ~]# cd /data/nas/
[root@localhost nas]# rz
上传nas包
[root@localhost nas]# ls esus-verify.tar.gz
esus-verify.tar.gz
[root@localhost nas]# tar -zxf esus-verify.tar.gz
[root@localhost nas]# ls
esus esus-verify.tar.gz
[root@localhost nas]# rm -f esus-verify.tar.gz
[root@localhost nas]# ls
esus
[root@localhost nas]# ls esus/
api file format imagecode seal template web
2.在192.168.171.129上安装后台服务
1)在192.168.171.129上安装docker:
[root@localhost ~]# docker info
Client:
Debug Mode: false
Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 19.03.2
2)将基础服务的相关镜像、配置文件、脚本打包上传到服务器的/data目录,自带了docker-compose安装
[root@localhost ~]# yum -y install nfs-utils #为了挂载nas
[root@localhost ~]# cd /data/
[root@localhost data]# ls docker-compose-verify.tar.gz
docker-compose-verify.tar.gz
[root@localhost data]# tar -zxf docker-compose-verify.tar.gz
[root@localhost data]# cd docker-compose-verify
[root@localhost docker-compose-verify]# ls
images verify-jars yaml_verify
[root@localhost docker-compose-verify]# ls images/
docker-compose gm-format3.tar mongo-jdk0704.tar sealsm2base.tar zip-3.0-11.el7.x86_64.rpm
[root@localhost docker-compose-verify]# ls verify-jars/
api cert-root-manager format sealstatus stamp-gateway web webviewer
[root@localhost docker-compose-verify]# ls verify-jars/api/
api.jar Dockerfile
[root@localhost docker-compose-verify]# ls yaml_verify/
1-verify_init.sh 2-run-docker-compose.sh 3-nas_mount.sh docker-compose.yaml
[root@localhost docker-compose-verify]# cat /etc/hosts
192.168.171.128 registerserver-pool.gmprd.baiwang.com
192.168.171.128 mysql.gmprd.baiwang.com
192.168.171.128 redis.gmprd.baiwang.com
192.168.171.128 redis-pool.gmprd.baiwang.com
确认各jar包的gmprd配置文件(其中一个时候gmtest和gmdev)连接mysql,redis,registry,mongo等域名,用户名和密码是否正确:
[root@localhost docker-compose-verify]# ls verify-jars/
api cert-root-manager format sealstatus stamp-gateway web webviewer
[root@localhost docker-compose-verify]# vim verify-jars/api/api.jar ...
[root@localhost docker-compose-verify]# vim verify-jars/...
[root@localhost docker-compose-verify]# cd yaml_verify/
[root@localhost yaml_verify]# ls
- verify_init.sh 2-run-docker-compose.sh 3-nas_mount.sh docker-compose.yaml
[root@localhost yaml_verify]# cat docker-compose.yaml
version: '3.3' # compose-file的语法版本
services: # 定义服务
useseal-api:
build: /data/docker-compose-verify/verify-jars/api
image: gomain/useseal-api:latest
ports:
- "9001:9001"
container_name: useseal-api
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-api_log:/mnt/logs:rw
useseal-sealstatus:
build: /data/docker-compose-verify/verify-jars/sealstatus
image: gomain/useseal-sealstatus:latest
ports:
- "9007:9007"
container_name: useseal-sealstatus
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-sealstatus_log:/mnt/logs:rw
useseal-stamp-gateway:
build: /data/docker-compose-verify/verify-jars/stamp-gateway
image: gomain/useseal-stamp-gateway:latest
ports:
- "8780:8780"
container_name: useseal-stamp-gateway
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-stamp-gate_log:/mnt/logs:rw
useseal-webviewer:
build: /data/docker-compose-verify/verify-jars/webviewer
image: gomain/useseal-webviewer:latest
ports:
- "8086:8086"
container_name: useseal-webviewer
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-webviewer_log:/mnt/logs:rw
cert-root-manager:
build: /data/docker-compose-verify/verify-jars/cert-root-manager
image: gomain/cert-root-manager:latest
ports:
- "10808:10808"
container_name: cert-root-manager
restart: always
network_mode: "host"
volumes:
- /data/log_verify/cert-root-manager_log:/mnt/logs:rw
useseal-format:
build: /data/docker-compose-verify/verify-jars/format
image: gomain/useseal-format:latest
ports:
- "9004:9004"
container_name: useseal-format
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-format_log:/mnt/logs:rw
useseal-web:
build: /data/docker-compose-verify/verify-jars/web
image: gomain/useseal-web:latest
ports:
- "9011:9011"
container_name: useseal-web
restart: always
network_mode: "host"
volumes:
- /data/log_verify/useseal-web_log:/mnt/logs:rw
[root@localhost yaml_verify]# cat 1-verify_init.sh
#!/bin/bash
#2020-03-17
rpm -ivh /data/docker-compose-verify/images/zip-3.0-11.el7.x86_64.rpm
images=/data/docker-compose-verify/images
docker load -i $images/sealsm2base.tar
docker load -i $images/gm-format3.tar
docker load -i $images/mongo-jdk0704.tar
mkdir -p /data/log_verify
mkdir -p /data/log_verify/useseal-web_log
mkdir -p /data/log_verify/useseal-format_log
mkdir -p /data/log_verify/cert-root-manager_log
mkdir -p /data/log_verify/useseal-webviewer_log
mkdir -p /data/log_verify/useseal-webviewer_log
mkdir -p /data/log_verify/useseal-stamp-gate_log
mkdir -p /data/log_verify/useseal-sealstatus_log
mkdir -p /data/log_verify/useseal-api_log
cp $images/docker-compose /usr/bin/
chmod 755 /usr/bin/docker-compose
[root@localhost yaml_verify]# cat 2-run-docker-compose.sh
#!/bin/bash
cd /data/docker-compose-verify/yaml_verify/
docker-compose up -d
docker-compose ps
docker ps
[root@localhost yaml_verify]# cat 3-nas_mount.sh
#!/bin/bash
NFS_IP=192.168.171.128
mkdir /data/log_verify/useseal-web_log/nas -p
mkdir /data/log_verify/useseal-format_log/nas -p
mkdir /data/log_verify/useseal-api_log/nas -p
mkdir /data/log_verify/useseal-sealstatus_log/nas -p
mkdir /data/log_verify/useseal-webviewer_log/nas -p
mount -t nfs $NFS_IP:/data/nas /data/log_verify/useseal-web_log/nas
mount -t nfs $NFS_IP:/data/nas /data/log_verify/useseal-format_log/nas
mount -t nfs $NFS_IP:/data/nas /data/log_verify/useseal-api_log/nas
mount -t nfs $NFS_IP:/data/nas /data/log_verify/useseal-sealstatus_log/nas
mount -t nfs $NFS_IP:/data/nas /data/log_verify/useseal-webviewer_log/nas
docker restart useseal-api useseal-webviewer useseal-web useseal-sealstatus useseal-format useseal-stamp-gateway cert-root-manager
[root@localhost yaml_verify]# sh 1-verify_init.sh #执行脚本初始化
[root@localhost yaml_verify]# ls /data/
docker-compose-verify docker-compose-verify.tar.gz log_verify
[root@localhost yaml_verify]# ls /data/log_verify/
cert-root-manager_log useseal-api_log useseal-format_log useseal-sealstatus_log useseal-stamp-gate_log useseal-web_log useseal-webviewer_log
[root@localhost yaml_verify]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gomain.com.cn/jdk-mongo latest 3cd80874b23a 8 months ago 888MB
sealsm2-2/base latest 4458abb536ae 12 months ago 527MB
gm-build.baiwang-inner.com/gm-format-sm2 1.0.3 1d6ac48f27fa 14 months ago 929MB
[root@localhost yaml_verify]# sh 2-run-docker-compose.sh #docker-compose拉取各后端服务
[root@localhost yaml_verify]# docker-compose ps
Name Command State Ports
----------------------------------------------------------------------
cert-root-manager java -Dspring.profiles.act ... Up
useseal-api java -Dspring.profiles.act ... Up
useseal-format java -Dspring.profiles.act ... Up
useseal-sealstatus java -Dspring.profiles.act ... Up
useseal-stamp-gateway java -Dspring.profiles.act ... Up
useseal-web java -Dspring.profiles.act ... Up
useseal-webviewer java -Dspring.profiles.act ... Up
[root@localhost yaml_verify]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2927f7378a6f gomain/useseal-api:latest "java -Dspring.profi…" 49 seconds ago Up 46 seconds useseal-api
6bf4f7c79c6a gomain/useseal-format:latest "java -Dspring.profi…" 49 seconds ago Up 46 seconds useseal-format
f22ff31a76fc gomain/useseal-sealstatus:latest "java -Dspring.profi…" 49 seconds ago Up 46 seconds useseal-sealstatus
30185cc89c85 gomain/useseal-web:latest "java -Dspring.profi…" 49 seconds ago Up 47 seconds useseal-web
21d65528654c gomain/useseal-stamp-gateway:latest "java -Dspring.profi…" 49 seconds ago Up 46 seconds useseal-stamp-gateway
7249b788701f gomain/cert-root-manager:latest "java -Dspring.profi…" 49 seconds ago Up 47 seconds cert-root-manager
e2624559e9c4 gomain/useseal-webviewer:latest "java -Dspring.profi…" 49 seconds ago Up 47 seconds useseal-webviewer
[root@localhost yaml_verify]# sh 3-nas_mount.sh #挂载nas后重启各后台服务
[root@localhost yaml_verify]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2927f7378a6f gomain/useseal-api:latest "java -Dspring.profi…" 2 minutes ago Up 29 seconds useseal-api
6bf4f7c79c6a gomain/useseal-format:latest "java -Dspring.profi…" 2 minutes ago Up 24 seconds useseal-format
f22ff31a76fc gomain/useseal-sealstatus:latest "java -Dspring.profi…" 2 minutes ago Up 25 seconds useseal-sealstatus
30185cc89c85 gomain/useseal-web:latest "java -Dspring.profi…" 2 minutes ago Up 26 seconds useseal-web
21d65528654c gomain/useseal-stamp-gateway:latest "java -Dspring.profi…" 2 minutes ago Up 22 seconds useseal-stamp-gateway
7249b788701f gomain/cert-root-manager:latest "java -Dspring.profi…" 2 minutes ago Up 20 seconds cert-root-manager
e2624559e9c4 gomain/useseal-webviewer:latest "java -Dspring.profi…" 2 minutes ago Up 28 seconds useseal-webviewer
检查后端服务:
[root@localhost docker-compose-verify]# netstat -anput |grep 9001 #检查api
tcp6 0 0 :::9001 :::* LISTEN 8062/java
[root@localhost docker-compose-verify]# netstat -anput |grep 10808 #检查cert-root-manager
tcp6 0 0 :::10808 :::* LISTEN 8552/java
[root@localhost docker-compose-verify]# netstat -anput |grep 9004 #检查format
tcp6 0 0 :::9004 :::* LISTEN 8390/java
[root@localhost docker-compose-verify]# netstat -anput |grep 9007 #检查sealstatus
tcp6 0 0 :::9007 :::* LISTEN 8308/java
[root@localhost docker-compose-verify]# netstat -anput |grep 8780 #检查stamp-gateway
tcp6 0 0 :::8780 :::* LISTEN 8472/java
[root@localhost docker-compose-verify]# netstat -anput |grep 9011 #检查web
tcp6 0 0 :::9011 :::* LISTEN 8226/java
[root@localhost docker-compose-verify]# netstat -anput |grep 8086 #检查webviwer
tcp6 0 0 :::8086 :::* LISTEN 8144/java
[root@localhost docker-compose-verify]# cd
查看注册中心:http://192.168.171.128:8889
3.在192.168.171.128上部署前端包和修改配置:
[root@localhost ~]# cd /data/nginx/
[root@localhost nginx]# ls
conf logs registry ssl users
[root@localhost nginx]# cd registry/
[root@localhost registry]# rz
上传前端包
[root@localhost registry]# ls
static_root.tar.gz
[root@localhost registry]# tar -zxf static_root.tar.gz
[root@localhost registry]# ls
static_root static_root.tar.gz
[root@localhost registry]# ls static_root
bak download download_bak frontend frontend.tar.gz index.html static
[root@localhost registry]# ls static_root/static/
css font fonts img js
[root@localhost registry]# ls static_root/download
bak linux system-config.txt windows
[root@localhost registry]# ls static_root/frontend
config.js css doc script serverConfig.json viewer.html viewer-ie.html viewer-non-ie.html webviewer.min.econtract.js
[root@localhost registry]# vim /data/nginx/conf/nginx.conf
user root;
worker_processes 4;
events {
worker_connections 10240;
}
http {
include mime.types;
default_type application/octet-stream;
client_max_body_size 128m;
sendfile on;
keepalive_timeout 65;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_comp_level 4;
gzip_types text/plain text/javascript application/x-javascript text/css application/xml application/xml+rss;
ssi on;
server_tokens off;
#upstream useRootCert {
# server 10.100.4.8:10808;
# server 10.100.4.57:10808;
#}
upstream webviewer {
server 192.168.171.129:8086;
}
upstream useVerify {
server 192.168.171.129:8780;
}
upstream useFastVerify {
server 192.168.171.129:8780;
}
server {
listen 80;
listen 443 ssl;
error_log /etc/nginx/logs/error.log;
access_log /etc/nginx/logs/access.log;
ssl_certificate /data/ssl/server.crt;
ssl_certificate_key /data/ssl/server.key;
ssl_session_timeout 5m;
server_name t2god.efapiao.com;
location / {
root registry/static_root;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /download/windows {
root registry/static_root;
index index.html index.htm;
}
location /download/linux {
root registry/static_root;
index index.html index.htm;
}
location /ElectronicVerify/ {
root registry/static_root;
index index.html index.htm;
}
# location /verify/ {
# root registry/static_root;
# index index.html index.htm;
# proxy_pass http://useVerify/;
# }
location /fastVerify/ {
root registry/static_root;
index index.html index.htm;
proxy_pass http://useFastVerify/;
}
location = /404.html {
root html;
index 404.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
[root@localhost registry]# docker restart nginx
浏览器访问验章系统:http://192.168.171.128/
如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频