SlideShare a Scribd company logo
Mějte vše nasazené
Docker, Traefik a CI
@ondrejsika
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
version: '3.6' # docker-compose.yml (Traefik)
services:
traefik:
image: traefik
command: |
'--web --docker --docker.watch '
'--entryPoints="Name:https Address::443 '
'TLS:/certs/cert.pem,/certs/key.pem" '
'--entryPoints="Name:http Address::80 '
'Redirect.EntryPoint:https"'
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./certs:/certs
network_mode: bridge
# .gitlab-ci.yml
deploy:
script:
- 'docker build -t ondrejsika/demo'
- 'docker login -u $DOCKERHUB_USER -p $DOCKERHUB_PASSWD'
- 'docker push ondrejsika/demo'
- 'ssh docker@demo.com docker run -d -l traefik.port=80 '
'-l traefik.frontend.rule=Host:$CI_COMMIT_REF_NAME.demo.com '
'-l traefik.frontend.entryPoints=http,https ondrejsika/demo'
environment:
name: $CI_COMMIT_REF_NAME
url: https://$CI_COMMIT_REF_NAME.demo.com
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete
Díky
@ondrejsika
ondrej@ondrejsika.com

More Related Content

PDF
Docker command
PDF
Steam Learn: Composer
PDF
How to create your own hack environment
PDF
Test driven infrastructure
DOCX
DockerCoreNet
PDF
Docker remote-api
PDF
How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...
PPTX
Docker Ecosystem: Part V - Docker Registry
Docker command
Steam Learn: Composer
How to create your own hack environment
Test driven infrastructure
DockerCoreNet
Docker remote-api
How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...
Docker Ecosystem: Part V - Docker Registry

What's hot (20)

PPTX
Dockerizing WordPress
DOCX
Install apache on centos
PDF
Infrastructure = code - 1 year later
PPTX
Installing and running Postfix within a docker container from the command line
PPT
Build service with_docker_in_90mins
PPTX
Laravel Day / Deploy
PPTX
Start tracking your ruby infrastructure
PDF
Dockerize everything TopConf Tallinn
PPTX
Vagrant step-by-step guide for Beginners
PDF
Eduardo Silva - monkey http-server everywhere
PDF
Backing up thousands of containers
PPTX
Docker and fig for dev
PDF
Ansible - Swiss Army Knife Orchestration
PDF
T.Pollak y C.Yaconi - Prey
PPTX
openATTIC using grafana and prometheus
PDF
Docker, c'est bonheur !
PDF
Docker e postgresql
PDF
Docker / Ansible
PDF
Nginx وب سروری برای تمام فصول
PPTX
Controlling multiple VMs with the power of Python
Dockerizing WordPress
Install apache on centos
Infrastructure = code - 1 year later
Installing and running Postfix within a docker container from the command line
Build service with_docker_in_90mins
Laravel Day / Deploy
Start tracking your ruby infrastructure
Dockerize everything TopConf Tallinn
Vagrant step-by-step guide for Beginners
Eduardo Silva - monkey http-server everywhere
Backing up thousands of containers
Docker and fig for dev
Ansible - Swiss Army Knife Orchestration
T.Pollak y C.Yaconi - Prey
openATTIC using grafana and prometheus
Docker, c'est bonheur !
Docker e postgresql
Docker / Ansible
Nginx وب سروری برای تمام فصول
Controlling multiple VMs with the power of Python
Ad

More from Develcz (20)

PDF
Daniel Steigerwald: WYSIWYG je šik! (když funguje)
PDF
Ondřej Hlaváček: Životní cyklus featury
PDF
Martin Hassman: Jak se tvoří addony pro World of Warcraft
PDF
Ondřej Voves: Jak přepsat monolit do mikroslužeb
PDF
Marcel Šulek: Zpraste svoje kódy
PDF
Michal Illich: Vývojáři staví letadlo
PDF
Ondřej Kokeš: Zpracování dat z veřejných zdrojů
PDF
Patrick Zandl: Open source software, hardware, 3D tiskárny a tvrdý business -...
PDF
Štěpán Bechynský: Hardware pro IoT projekty nejen pro hobby, ale i pro průmysl
PDF
Tomáš Vondra: Paralelizace dotazu a partitioning v PostgreSQL
PDF
Tomáš Zvěřina: Flutter.io - multiplatformní vývoj mobilních aplikací
PDF
Jakub Vrána: Dokazatelná bezpečnost
PDF
Roman Schejbal: From Madness To Reason
PDF
Michal Illich: Zuri aneb Vývojáři staví letadlo
PDF
David Majda: Autoformátování kódu
PPTX
David Grudl: Open source: The Good, the Bad and the Ugly
PDF
Ondřej Machulda: Začíná zlatá doba end-to-end testů!
PDF
Adam Kudrna: Headless WordPress/Drupal
PDF
Jaroslav Tulach: GraalVM - z vývoje nejrychlejšího virtuálního stroje na světě
PDF
Martin Michálek: Bootstrap 4 - Jednou to muselo přijít
Daniel Steigerwald: WYSIWYG je šik! (když funguje)
Ondřej Hlaváček: Životní cyklus featury
Martin Hassman: Jak se tvoří addony pro World of Warcraft
Ondřej Voves: Jak přepsat monolit do mikroslužeb
Marcel Šulek: Zpraste svoje kódy
Michal Illich: Vývojáři staví letadlo
Ondřej Kokeš: Zpracování dat z veřejných zdrojů
Patrick Zandl: Open source software, hardware, 3D tiskárny a tvrdý business -...
Štěpán Bechynský: Hardware pro IoT projekty nejen pro hobby, ale i pro průmysl
Tomáš Vondra: Paralelizace dotazu a partitioning v PostgreSQL
Tomáš Zvěřina: Flutter.io - multiplatformní vývoj mobilních aplikací
Jakub Vrána: Dokazatelná bezpečnost
Roman Schejbal: From Madness To Reason
Michal Illich: Zuri aneb Vývojáři staví letadlo
David Majda: Autoformátování kódu
David Grudl: Open source: The Good, the Bad and the Ugly
Ondřej Machulda: Začíná zlatá doba end-to-end testů!
Adam Kudrna: Headless WordPress/Drupal
Jaroslav Tulach: GraalVM - z vývoje nejrychlejšího virtuálního stroje na světě
Martin Michálek: Bootstrap 4 - Jednou to muselo přijít
Ad

Recently uploaded (20)

PPTX
AIRLINE PRICE API | FLIGHT API COST |
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Forouzan Book Information Security Chaper - 1
PDF
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
PDF
AI in Product Development-omnex systems
PDF
Understanding NFT Marketplace Development_ Trends and Innovations.pdf
PDF
Become an Agentblazer Champion Challenge Kickoff
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Perfecting Gamer’s Experiences with Performance Testing for Gaming Applicatio...
PPTX
Save Business Costs with CRM Software for Insurance Agents
PPTX
What to Capture When It Breaks: 16 Artifacts That Reveal Root Causes
PDF
System and Network Administraation Chapter 3
PDF
Teaching Reproducibility and Embracing Variability: From Floating-Point Exper...
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Build Multi-agent using Agent Development Kit
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Materi_Pemrograman_Komputer-Looping.pptx
PDF
Convert Thunderbird to Outlook into bulk
AIRLINE PRICE API | FLIGHT API COST |
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Forouzan Book Information Security Chaper - 1
QAware_Mario-Leander_Reimer_Architecting and Building a K8s-based AI Platform...
AI in Product Development-omnex systems
Understanding NFT Marketplace Development_ Trends and Innovations.pdf
Become an Agentblazer Champion Challenge Kickoff
How to Migrate SBCGlobal Email to Yahoo Easily
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Perfecting Gamer’s Experiences with Performance Testing for Gaming Applicatio...
Save Business Costs with CRM Software for Insurance Agents
What to Capture When It Breaks: 16 Artifacts That Reveal Root Causes
System and Network Administraation Chapter 3
Teaching Reproducibility and Embracing Variability: From Floating-Point Exper...
How Creative Agencies Leverage Project Management Software.pdf
Build Multi-agent using Agent Development Kit
Upgrade and Innovation Strategies for SAP ERP Customers
Materi_Pemrograman_Komputer-Looping.pptx
Convert Thunderbird to Outlook into bulk

Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pracujete

  • 1. Mějte vše nasazené Docker, Traefik a CI @ondrejsika
  • 13. version: '3.6' # docker-compose.yml (Traefik) services: traefik: image: traefik command: | '--web --docker --docker.watch ' '--entryPoints="Name:https Address::443 ' 'TLS:/certs/cert.pem,/certs/key.pem" ' '--entryPoints="Name:http Address::80 ' 'Redirect.EntryPoint:https"' ports: - "80:80" - "443:443" volumes: - /var/run/docker.sock:/var/run/docker.sock - ./certs:/certs network_mode: bridge
  • 14. # .gitlab-ci.yml deploy: script: - 'docker build -t ondrejsika/demo' - 'docker login -u $DOCKERHUB_USER -p $DOCKERHUB_PASSWD' - 'docker push ondrejsika/demo' - 'ssh [email protected] docker run -d -l traefik.port=80 ' '-l traefik.frontend.rule=Host:$CI_COMMIT_REF_NAME.demo.com ' '-l traefik.frontend.entryPoints=http,https ondrejsika/demo' environment: name: $CI_COMMIT_REF_NAME url: https://$CI_COMMIT_REF_NAME.demo.com