1.登录阿里云效,将代码上传到云效当中,我这边选择的是将gitee拉进来,自行选择
2.新建流水线, 选择可视化编排
进去之后会有两个使命, 一个java构建测试上传, 一个主机摆设,必要编写相应脚本
java构建测试上传
这里的设置看自己需求选择相应的,我用得是Linux
看自己所对应的版本选择
- # maven build default command
- # maven build default command
- mvn clean package -P dev
- # gradle build default command
- # ./gradlew build
- # ant build default command
- # ant
复制代码 这个就是脚本下令 -P dev 是选择动态设置的
打包路径是你对应的微服务的jar包的相对路径,不是绝对路径 这是我对应的
smart-health-modules/smart-health-search/target/smart-health-search.jar
主机摆设
这便就选择对应的主机,也就是你的服务器,下载路径是打的包到服务器的位置我这里就是
/home/admin/app/package.tgz
摆设脚本
- # 部署脚本会在部署组的每台机器上执行。一个典型脚本逻辑如下:先将制品包(在下载路径中配置的下载路径)解压缩到指定目录中,再执行启动脚本(通常在代码中维护,如示例中deploy.sh)。关于这个例子的详细解释见 https://help.aliyun.com/document_detail/153848.html
- tar zxvf /home/admin/app/package.tgz -C /package/smart-health-manager
- cd /package/smart-health-manager
- chmod +x start.sh
- ./start.sh
- # 如果你是php之类的无需制品包的制品方式,可以使用git clone 或者 git pull将源代码更新到服务器,再执行其他命令
- # git clone ***@***.git
复制代码
这个是将打的jar包放到这个目录下
如许流水线大致就完成了生存即可
服务器:
必要安装 docker-compose 自行搜索
在跟目录创建 /package/smart-health-manager 这个路径 跟上边同等即可
新建一个文件 docker-compose.yml
- version: '3.3' # 使用 3.3 或 2.2,确保版本兼容
- services:
- smart-health-file:
- container_name: smart-health-file
- image: smart-health-file
- build:
- context: /package/smart-health-manager/smart-health-modules/smart-health-file/target # 构建上下文
- dockerfile: Dockerfile # Dockerfile 文件
- ports:
- - "2008:2008"
- networks:
- - frontend
- - backend # 将服务连接到 frontend 和 backend 网络
- volumes:
- - db-data:/data/db # 将 db-data 卷挂载到容器的 /data/db 目录
- networks:
- frontend:
- backend:
- # 定义卷
- volumes:
- db-data:
复制代码
start.sh文件
- # 停止并移除旧容器及相关网络和卷
- docker-compose down
- docker rmi smart-health-search
- docker rmi smart-health-file
- docker rmi smart-health-rests
- docker rmi smart-health-test
- docker rmi smart-health-wordmate
- # 重新构建并启动容器
- docker-compose up -d --build # 使用 --build 选项确保重新构建镜像
复制代码 jar目录下要编写一个Dockerfile文件
Dockerfile
- # 指定基础镜像
- FROM openjdk:17
- #WORKDIR指令用于指定容器的一个目录, 容器启动时执行的命令会在该目录下执行。
- WORKDIR /opt/docker/images/metabase/
- #将当前spring.jar 复制到容器根目录下
- ADD smart-health-file.jar smart-health-file.jar
- #将依赖包 复制到容器根目录/libs下,spring.jar已不再需要添加其它jar包
- #ADD libs /libs
- #暴露容器端口为8080 Docker镜像告知Docker宿主机应用监听了8080端口
- EXPOSE 2008
- #容器启动时执行的命令
- CMD java -jar smart-health-file.jar
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |