CI/CD爲持續集成(Continuous Integration)和持續部署(Continuous Deployment)的總稱,是經過自動化的構建、測試和部署,實現軟件產品可循環使用的快速交付流程。java
下面咱們就用Jenkins+Docker完成一個SpringBoot的部署。git
一個 Dockerfile
模板文件,能夠讓用戶很方便的定義一個單獨的應用容器,Dockerfile內容以下:docker
FROM java:8 VOLUME /tmp ADD demo-0.0.1-SNAPSHOT.jar app.jar RUN bash -c 'touch /app.jar' EXPOSE 8080 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
Docker Compose
是 Docker 官方編排(Orchestration)項目之一,實現對 Docker 容器集羣的快速編排 負責快速的部署分佈式應用。docker-compose.yml內容以下:bash
demo: build: . ports: - "8888:8080" - "80:80"
命令腳本以下:服務器
cd /opt/war /usr/local/bin/docker-compose down --rmi all /usr/local/bin/docker-compose up -d