Original article, welcome to reprint. Reprint please specify: reprint from IT people story, thank you! Docker (18) — Continuous Integration

How to integrate continuously




image




image

0: Developers submit code to Github

1: Trigger Jenkins operation

2: Jenkins compiled and verified the code

3: encapsulate the code in the Docker image and upload it to the Docker repository

4: Jenkins sends a deployment request to Marathon, and Marathon completes the deployment

5: Conduct integration tests

6: The integration test passes, triggering the deployment of the R&D environment

7: Conduct integration tests

8: accessible to users

Based on MESOS practices




image

Environment Preparation:

mesos-slave1:4CPU-64GBRAM-500GB DISK

mesos-slave2:4CPU-128GBRAM-600GB DISK

Mesos-slave3:8CPU-12GBRAM-250GB DISK

Step description:

1: Three machines send a request to the MesOS Master to register as a MesOS slave node

2: send a request to Marathon to start the container, which occupies 2CPU-512M RAM-5GB DISK

3: Marathon sends a request to MESos to start the corresponding task

4: After mesos calculation, start the task sent by Marathon on slave1 node, and the task is complete

5: Send a request to Jenkins to execute the task, which needs to occupy 8CPU-256m RAM-5Gbdisk

Jenkins sends a request to Mesos to initiate the task

7: After mesos calculation, start the task sent by Jenkins on SlavE3 node, and the task is completed

Jenkins Pipine:

Personal homepage: IT people’s stories

Previous Docker lessons:

  1. Know the docker

  2. Core concepts and installation

  3. Common operations for mirroring

  4. Basic container operations

  5. warehouse

  6. Data volume

  7. network

  8. Dockerfile

  9. Introduction to git

  10. Jenkins USES

  11. Jenkins+git+docker

  12. Docker compose usage

  13. Use of docker Machine

  14. Use of Docker swarm

  15. Monitor logs and manage logs

  16. Single-node MESOS cluster

  17. Multi-node MESOS cluster