Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
T
think-tank
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
think-tank
Commits
d81d1eda
提交
d81d1eda
authored
2月 13, 2025
作者:
李星宇
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1. 增加nacos配置
2. ssh免密登录改为docker-agent模式
上级
22cf9ee4
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
42 行增加
和
23 行删除
+42
-23
Dockerfile
build/Dockerfile
+4
-2
build.sh
build/build.sh
+3
-1
env.prod
build/env/env.prod
+7
-2
env.test
build/env/env.test
+5
-0
run.sh
build/run.sh
+19
-15
application-test.yml
src/main/resources/application-test.yml
+2
-1
bootstrap.yml
src/main/resources/bootstrap.yml
+2
-2
没有找到文件。
build/Dockerfile
浏览文件 @
d81d1eda
...
@@ -19,6 +19,7 @@ COPY --from=builder /workspace/target/*.jar /workspace/app.jar
...
@@ -19,6 +19,7 @@ COPY --from=builder /workspace/target/*.jar /workspace/app.jar
ARG
ENV_NAME
ARG
ENV_NAME
ARG
NACOS_SERVER
ARG
NACOS_SERVER
ARG
NACOS_NAMESPACE
ARG
NACOS_NAMESPACE
ARG
NACOS_REGISTER_IP
ARG
PORT
ARG
PORT
ENV
APP_OPTS1="-Dspring.profiles.active=${ENV_NAME}"
ENV
APP_OPTS1="-Dspring.profiles.active=${ENV_NAME}"
...
@@ -27,8 +28,9 @@ ENV APP_OPTS3="-Dfile.encoding=utf-8"
...
@@ -27,8 +28,9 @@ ENV APP_OPTS3="-Dfile.encoding=utf-8"
ENV
APP_OPTS4="-Duser.timezone=Asia/Shanghai"
ENV
APP_OPTS4="-Duser.timezone=Asia/Shanghai"
ENV
APP_OPTS5="-DNACOS_SERVER=${NACOS_SERVER}"
ENV
APP_OPTS5="-DNACOS_SERVER=${NACOS_SERVER}"
ENV
APP_OPTS6="-DNACOS_NAMESPACE=${NACOS_NAMESPACE}"
ENV
APP_OPTS6="-DNACOS_NAMESPACE=${NACOS_NAMESPACE}"
ENV
APP_OPTS7="-NACOS_REGISTER_IP=${NACOS_REGISTER_IP}"
ENV
JVM_OPTS="-Xmx2024M -Xms256M"
ENV
JVM_OPTS="-Xmx2024M -Xms256M"
EXPOSE
${PORT}
EXPOSE
${PORT}
ENTRYPOINT
["sh","-c","java $APP_OPTS1 $APP_OPTS2 $APP_OPTS3 $APP_OPTS4 $APP_OPTS5 $APP_OPTS6 -jar $JVM_OPTS /workspace/app.jar"]
ENTRYPOINT
["sh","-c","java $APP_OPTS1 $APP_OPTS2 $APP_OPTS3 $APP_OPTS4 $APP_OPTS5 $APP_OPTS6 $APP_OPTS7 -jar $JVM_OPTS /workspace/app.jar"]
\ No newline at end of file
\ No newline at end of file
build/build.sh
浏览文件 @
d81d1eda
...
@@ -36,15 +36,17 @@ function handle {
...
@@ -36,15 +36,17 @@ function handle {
local
dir
=
"
${
root_dir
}
/
${
svc_name
}
/
${
svc_env
}
"
local
dir
=
"
${
root_dir
}
/
${
svc_name
}
/
${
svc_env
}
"
local
name
=
"
${
svc_name
}
-
${
svc_env
}
"
local
name
=
"
${
svc_name
}
-
${
svc_env
}
"
local
version
=
${
version
}
-
${
build_timestamp
}
local
version
=
${
version
}
-
${
build_timestamp
}
local
internal_ip
=
"
${
internal_ip
}
"
echo
"构建名称:
${
name
}
"
echo
"构建名称:
${
name
}
"
echo
"构建端口:
${
svc_port
}
"
echo
"构建端口:
${
svc_port
}
"
echo
"部署节点:
${
internal_ip
}
"
echo
"构建版本:
${
version
}
"
echo
"构建版本:
${
version
}
"
echo
"推送仓库:
${
domain
}
/
${
namespace
}
"
echo
"推送仓库:
${
domain
}
/
${
namespace
}
"
echo
"完整镜像:
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
"
echo
"完整镜像:
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
"
echo
"---构建镜像---"
echo
"---构建镜像---"
docker build
--build-arg
NACOS_SERVER
=
${
nacos_server
}
--build-arg
NACOS_NAMESPACE
=
${
nacos_namespace
}
\
docker build
--build-arg
NACOS_
REGISTER_IP
=
${
internal_ip
}
--build-arg
NACOS_
SERVER
=
${
nacos_server
}
--build-arg
NACOS_NAMESPACE
=
${
nacos_namespace
}
\
--build-arg
ENV_NAME
=
${
svc_env
}
--build-arg
PORT
=
${
svc_port
}
-f
./build/Dockerfile
-t
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
.
--build-arg
ENV_NAME
=
${
svc_env
}
--build-arg
PORT
=
${
svc_port
}
-f
./build/Dockerfile
-t
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
.
echo
"---推送镜像---"
echo
"---推送镜像---"
...
...
build/env/env.prod
浏览文件 @
d81d1eda
...
@@ -7,6 +7,8 @@ domain="swr.cn-southwest-2.myhuaweicloud.com"
...
@@ -7,6 +7,8 @@ domain="swr.cn-southwest-2.myhuaweicloud.com"
namespace="wd"
namespace="wd"
# 服务配置
# 服务配置
# 部署节点的内网IP
internal_ip=192.168.0.19
# 数据挂载根目录
# 数据挂载根目录
root_dir="/zzsn"
root_dir="/zzsn"
# 需根据日志配置填写,比如:logback-spring.xml
# 需根据日志配置填写,比如:logback-spring.xml
...
@@ -16,7 +18,10 @@ svc_env="prod"
...
@@ -16,7 +18,10 @@ svc_env="prod"
# 服务名
# 服务名
svc_name="think-tank"
svc_name="think-tank"
# 服务端口
# 服务端口
svc_port="909
8
"
svc_port="909
9
"
# nacos配置
# nacos配置
## 往nacos注册IP,配置文件使用变量 NACOS_REGISTER_IP
## nacos服务地址, 配置文件使用 NACOS_SERVER
nacos_server="192.168.0.249:8848"
nacos_server="192.168.0.249:8848"
nacos_namespace="smartTest"
## nacos命名空间, 配置文件使用 NACOS_NAMESPACE
nacos_namespace="smartProd"
build/env/env.test
浏览文件 @
d81d1eda
...
@@ -7,6 +7,8 @@ domain="swr.cn-southwest-2.myhuaweicloud.com"
...
@@ -7,6 +7,8 @@ domain="swr.cn-southwest-2.myhuaweicloud.com"
namespace
=
"wd"
namespace
=
"wd"
# 服务配置
# 服务配置
# 部署节点的内网IP
internal_ip
=
192.168
.
0.19
# 数据挂载根目录
# 数据挂载根目录
root_dir
=
"/zzsn"
root_dir
=
"/zzsn"
# 需根据日志配置填写,比如:logback-spring.xml
# 需根据日志配置填写,比如:logback-spring.xml
...
@@ -18,5 +20,8 @@ svc_name="think-tank"
...
@@ -18,5 +20,8 @@ svc_name="think-tank"
# 服务端口
# 服务端口
svc_port
=
"9099"
svc_port
=
"9099"
# nacos配置
# nacos配置
## 往nacos注册IP,配置文件使用变量 NACOS_REGISTER_IP
## nacos服务地址, 配置文件使用 NACOS_SERVER
nacos_server
=
"192.168.0.249:8848"
nacos_server
=
"192.168.0.249:8848"
## nacos命名空间, 配置文件使用 NACOS_NAMESPACE
nacos_namespace
=
"smartTest"
nacos_namespace
=
"smartTest"
build/run.sh
浏览文件 @
d81d1eda
...
@@ -34,26 +34,30 @@ function handle {
...
@@ -34,26 +34,30 @@ function handle {
local
dir
=
"
${
root_dir
}
/
${
svc_name
}
/
${
svc_env
}
"
local
dir
=
"
${
root_dir
}
/
${
svc_name
}
/
${
svc_env
}
"
local
name
=
"
${
svc_name
}
-
${
svc_env
}
"
local
name
=
"
${
svc_name
}
-
${
svc_env
}
"
local
version
=
${
version
}
-
${
build_timestamp
}
local
version
=
${
version
}
-
${
build_timestamp
}
local
internal_ip
=
"
${
internal_ip
}
"
echo
"---运行容器:
${
name
}
:
${
version
}
---"
echo
"---运行容器:
${
name
}
:
${
version
}
---"
docker pull
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
# 构建 JSON 数据
json_data
=
$(
cat
<<
EOF
if
[
"
$(
docker ps
-aqf
"name=^
${
name
}
"
)
"
]
;
then
{
# 如果存在,则停止并删除容器
"container_name": "
${
svc_name
}
",
echo
"停止并删除容器:
${
name
}
"
"image_version": "
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
",
docker rm
-f
"
${
name
}
"
"ports": ["
${
svc_port
}
:
${
svc_port
}
"],
"mount_infos": ["/etc/localtime:/etc/localtime:ro", "
${
dir
}
/logs:
${
svc_logs
}
"]
}
EOF
)
# 执行 curl 请求,并将响应结果存储在 response 变量中
response
=
$(
curl
-s
-X
POST
-H
"Content-Type: application/json"
-d
"
$json_data
"
"http://
$internal_ip
:10080/start-container"
)
# 检查响应中是否包含 "succeed"
if
echo
"
$response
"
|
grep
-q
"Successfully"
;
then
echo
"请求成功,响应中包含 Successfully。"
exit
0
else
else
echo
"容器不存在直接运行:
${
name
}
"
echo
"请求失败,响应中不包含 Successfully。"
exit
1
fi
fi
docker run
--restart
always
-d
-p
${
svc_port
}
:
${
svc_port
}
--name
${
name
}
\
-v
/etc/localtime:/etc/localtime:ro
\
-v
${
dir
}
/logs:
${
svc_logs
}
\
${
domain
}
/
${
namespace
}
/
${
name
}
:
${
version
}
echo
"---清理none镜像---"
docker image prune
-af
}
}
# 主程序入口点
# 主程序入口点
...
...
src/main/resources/application-test.yml
浏览文件 @
d81d1eda
...
@@ -7,5 +7,5 @@ spring:
...
@@ -7,5 +7,5 @@ spring:
namespace
:
smartTest
namespace
:
smartTest
discovery
:
discovery
:
namespace
:
smartTest
namespace
:
smartTest
ip
:
192.168.0.249
ip
:
${NACOS_REGISTER_IP}
port
:
${server.port}
port
:
${server.port}
\ No newline at end of file
src/main/resources/bootstrap.yml
浏览文件 @
d81d1eda
...
@@ -2,13 +2,13 @@ spring:
...
@@ -2,13 +2,13 @@ spring:
cloud
:
cloud
:
nacos
:
nacos
:
config
:
config
:
server-addr
:
${NACOS_SERVER
:1.95.57.223:8848
}
server-addr
:
${NACOS_SERVER}
username
:
ZZSN(ZIgriRlkxZ2g3SxM9x6sVYcMQe2QVxXx0/l4BAivWsTeVPkAYERSKxlHxzUwHF5M)
username
:
ZZSN(ZIgriRlkxZ2g3SxM9x6sVYcMQe2QVxXx0/l4BAivWsTeVPkAYERSKxlHxzUwHF5M)
password
:
ZZSN(zB38iUSsp2RptT9HMrjJ0qGdSJ5iwq3jToor7ozqfMOYTiC6RwOvAxdayF7x9qm/)
password
:
ZZSN(zB38iUSsp2RptT9HMrjJ0qGdSJ5iwq3jToor7ozqfMOYTiC6RwOvAxdayF7x9qm/)
file-extension
:
yml
file-extension
:
yml
namespace
:
${NACOS_NAMESPACE:smartDev}
namespace
:
${NACOS_NAMESPACE:smartDev}
discovery
:
discovery
:
server-addr
:
${NACOS_SERVER
:1.95.57.223:8848
}
server-addr
:
${NACOS_SERVER}
username
:
ZZSN(ZIgriRlkxZ2g3SxM9x6sVYcMQe2QVxXx0/l4BAivWsTeVPkAYERSKxlHxzUwHF5M)
username
:
ZZSN(ZIgriRlkxZ2g3SxM9x6sVYcMQe2QVxXx0/l4BAivWsTeVPkAYERSKxlHxzUwHF5M)
password
:
ZZSN(zB38iUSsp2RptT9HMrjJ0qGdSJ5iwq3jToor7ozqfMOYTiC6RwOvAxdayF7x9qm/)
password
:
ZZSN(zB38iUSsp2RptT9HMrjJ0qGdSJ5iwq3jToor7ozqfMOYTiC6RwOvAxdayF7x9qm/)
namespace
:
${NACOS_NAMESPACE:smartDev}
namespace
:
${NACOS_NAMESPACE:smartDev}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论