天机项目
配置虚拟机的固定ip
所以,虚拟机的ip为:192.168.150.101
本地windows的ip为:192.168.150.1
访问域名端口配置
修改windows中hosts文件,将ip换成对应的域名
192.168.150.101 jenkins.tianji.com
192.168.150.101 mq.tianji.com
192.168.150.101 nacos.tianji.com
192.168.150.101 xxljob.tianji.com
192.168.150.101 es.tianji.com
192.168.150.101 api.tianji.com
192.168.150.101 www.tianji.com
192.168.150.101 manage.tianji.com
nginx反向代理 nginx配置文件目录
/usr/local/src/nginx/conf
配置文件内容
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include 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 logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#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;
}
}
server {
listen 80;
server_name git.tianji.com;
location / {
proxy_pass http://localhost:10880;
}
}
server {
listen 80;
server_name jenkins.tianji.com;
location / {
proxy_pass http://localhost:18080;
}
}
server {
listen 80;
server_name mq.tianji.com;
location / {
proxy_pass http://localhost:15672;
}
}
server {
listen 80;
server_name nacos.tianji.com;
location / {
rewrite /(.*) /nacos/$1 break;
proxy_pass http://localhost:8848;
}
}
server {
listen 80;
server_name xxljob.tianji.com;
location / {
rewrite / /xxl-job-admin break;
proxy_pass http://localhost:8880;
}
location /xxl-job-admin {
proxy_pass http://localhost:8880;
}
}
server {
listen 80;
server_name es.tianji.com;
location / {
proxy_pass http://localhost:5601;
}
}
server {
listen 80;
server_name api.tianji.com;
location / {
proxy_set_header Host $host; # 传递原始Host头
proxy_pass http://192.168.150.101:10010;
# proxy_pass http://192.168.150.1:10010; # 由于要修改网关在本地测试,所以代理到本地IP
}
}
server {
listen 80;
server_name www.tianji.com;
location / {
root /usr/local/src/tj-portal;
index index.html index.htm;
# proxy_pass http://192.168.150.1:18082;
}
location /img-tx {
rewrite /img-tx/(.*) /$1 break;
proxy_pass http://wisehub-1312394356.cos.ap-shanghai.myqcloud.com;
}
}
server {
listen 80;
server_name manage.tianji.com;
location / {
root /usr/local/src/tj-admin;
index index.html index.htm;
# proxy_pass http://192.168.150.1:18081;
}
location /img-tx {
rewrite /img-tx/(.*) /$1 break;
proxy_pass http://wisehub-1312394356.cos.ap-shanghai.myqcloud.com;
}
}
}
从配置文件可以看出天机项目前端访问地址:
管理端:manage.tianji.com/ 13500010002/admin type为 1员工,3老师
用户端:www.tianji.com/ jack/123321 type为 2普通学员
mysql 端口3306,root/123
持续集成DevOps
自动构建、发布、测试 防止主干和分支存在较大差异 快速发现错误、解决错误
gogs git.tianji.com/ tjxt/123321
jenkins jenkins.tianji.com/ root/123
当有代码提交到gogs上后,jenkins从gogs上拉取代码,进行编译打包成docker镜像,在交给docker容器重新部署。
配置钩子指向jeankins地址
tjxt-dev-build服务用于项目的编译和构建。具体的每个微服务才是构建docker镜像,docker容器启动部署。
git提交代码分支说明
git clone http://192.168.150.101:10880/tjxt/tianji.git -b lesson-init
切换到lesson-init分支
再以lesson-init分支为基础创建自己的开发分支dev
git checkout -b dev
springboot项目中的配置文件取名为bootstrap,而不是application,是因为跟nacos有关系。
启动配置里Active profiles为local,这里的配置要比配置文件bootstrap中配置优先级要高。这样就实现在不修改配置文件的前提下,通过设置参数值来选择启动配置文件。
register-enabled使用
为false,表示从nacos上拉取别的服务实现调用,但是自己不会注册到nacos上供别的服务调用。
spring:
cloud:
nacos:
server-addr: 192.168.150.101:8848 # nacos注册中心
discovery:
namespace: f923fb34-cb0a-4c06-8fca-ad61ea61a3f0
group: DEFAULT_GROUP
ip: 192.168.150.1
register-enabled: false # 不会做服务的注册,只做服务订阅,默认为true
logging:
level:
com.tianji: debug