jenkins , ansible playbook,
web app build - copy ansible-server -> image -> run
first-devops-playbook.yml
~
- hosts: all
# become: true
tasks:
- name: stop current running container
command: docker stop my_cicd_project
ignore_errors: yes
- name: remove stopped cotainer
command: docker rm my_cicd_project
ignore_errors: yes
- name: remove current docker image
command: docker rmi cicd-project-ansible
ignore_errors: yes
- name: build a docker image with deployed war file
command: docker build -t cicd-project-ansible .
args:
chdir: /root
- name: create a container using cicd-project-ansible image
command: docker run -d --name my_cicd_project -p 8080:8080 cicd-project-ansible
빌드 후 조치
ansible-playbook -i hosts first-devops-playbook.yml
hosts
Dockerfile
FROM tomcat:9.0
LABEL org.opencontainers.image.authors="edowon0623@gmail.com"
COPY ./hello-world.war /usr/local/tomcat/webapps
----
docker hub
push
pull
run
ansible-playbook -i hosts create-cicd-devops-image.yml --limit 172.17.0.3
- hosts: all
tasks:
- name: build a docker image with deployed war file
command: docker build -t syseoz/cicd-project-ansible .
args:
chdir: /root
- name: push the image on Docker Hub
command: docker push syseoz/cicd-project-ansible
- name: remove the docker image
command: docker rmi syseoz/cicd-project-ansible
ignore_errors: yes
ansible-playbook -i hosts create-cicd-devops-playbook.yml --limit 172.17.0.4
- hosts: all
# become: true
tasks:
- name: stop current running container
command: docker stop my_cicd_project
ignore_errors: yes
- name: remove stopped cotainer
command: docker rm my_cicd_project
ignore_errors: yes
- name: remove current docker image
command: docker rmi syseoz/cicd-project-ansible
ignore_errors: yes
- name: pull the image from docker hub
command: docker pull syseoz/cicd-project-ansible
args:
chdir: /root
- name: create a container using cicd-project-ansible image
command: docker run -d --name my_cicd_project -p 8080:8080 syseoz/cicd-project-ansible