@@ -0,0 +1,64 @@
+kind: pipeline
+type: docker
+name: test-pipeline
+
+# 关闭自动设置Git镜像
+# 此处可以不设置,将获取最新的git镜像
+clone:
+ disable: true
+steps:
+ # 设置Git镜像版本,下载仓库文件
+ # 如果上面没有设置clone,此处需要删除(如果不删除,在pipeline中将多一个clone,pipeline会出错)
+ - name: clone
+ image: drone/git:1.2.1
+ # 构建和编译Java项目
+ - name: test-build
+ image: maven:3.8.4
+ volumes:
+ # Maven缓存目录
+ - name: mvn-cache
+ path: /root/.m2
+ # 在Docker容器内执行的命令
+ commands:
+ - mvn clean install
+ # 发布项目
+ - name: test-deploy
+ image: appleboy/drone-ssh:1.6.4
+ settings:
+ # 部署主机的IP
+ host: 192.168.108.200
+ # 部署主机的登录账号,需从Drone中获取密钥名ssh_user的值,创建方式见下面
+ username:
+ from_secret: ssh_user
+ # 部署主机的登录密码,需从Drone中获取密钥名ssh_pwd的值,创建方式见下面
+ password:
+ from_secret: ssh_pwd
+ # 端口号
+ port: 22
+ # 设置超时
+ command_timeout: 10m
+ # 编写脚本,可根据具体情况编写
+ script:
+ # 进入宿主机的“/home/app”目录(注意:先在宿主机上创建app目录)
+ - cd /home/app
+ # 删除jar包,我测试的工程名是test
+ # - rm -rf test.0.0.1-SNAPSHOT.jar
+ # 将编译后的jar包复制到"/home/app"下
+ - cp /home/mvn/.m2/repository/com/example/test/0.0.1-SNAPSHOT/test-0.0.1-SNAPSHOT.jar .
+ # 执行"/home/app"下的脚本(注意:需要在“/home/app”目录下创建start.sh文件)
+ # - sh start.sh
+# 挂载宿主机目录,对应"test-build"的Maven容器的目录
+volumes:
+ host:
+ path: /home/mvn/.m2
+# 对应Gogs仓库分支
+trigger:
+ branch:
+ - master
@@ -4,6 +4,6 @@ FROM java:8
ADD code-test-1.0.0.jar code-test-1.0.0.jar
# 指定docker容器启动时运行jar包
#在容器启动的时候运行命令,来启动我们的项目
-ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/filesystem.jar","-Xms128m","-Xmx128m","-c"]
+ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","code-test-1.0.0.jar","-Xms128m","-Xmx128m","-c"]
# 指定维护者的名字
MAINTAINER demon471