kind: pipeline type: docker name: deployment steps: - name: check image: alpine commands: - ls -la - ls -la Dockerfile # 查看当前文件夹是否包含了Dockerfile - name: publish image: plugins/docker settings: username: from_secret: nexus_username password: from_secret: nexus_password pull: if-not-exists # 如果镜像不存在则拉取,免去每次都要重新下载 dockerfile: Dockerfile tags: latest # you need insecure: true since we don't have a TLS certificate insecure: true registry: 192.168.31.104:8082 repo: 192.168.31.104:8082/tiamo/user-point-management volumes: # 将容器内目录挂载到宿主机,仓库需要开启Trusted设置 - name: dockersock path: /var/run/docker.sock - name: deploy pull: if-not-exists image: appleboy/drone-ssh environment: Connection: from_secret: connection settings: host: 192.168.31.225 port: 22 username: drone password: dronepw command_timeout: 2m script: - echo $Connection - docker pull 192.168.31.104:8082/tiamo/user-point-management - docker image prune -f - docker stop user-point-management - docker container prune -f - docker tag 192.168.31.104:8082/tiamo/user-point-management tiamo/user-point-management:latest - docker run --name user-point-management -d -p 29029:5000 tiamo/user-point-management - echo 执行完成 volumes: - name: dockersock host: path: /var/run/docker.sock #trigger: # branch: # - master