SlideShare a Scribd company logo
1 of 40
João Brito @juniorjbn
Conceitos
Criando uma aplicação de teste
Hacking
S2i + OC =
➔Assenble
➔Run
BuildConfig
➔Build Binário
➔Build Incremental
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 4 days ago
4. Labels: app=site
i. template=site
5. Annotations: openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Strategy: Source
8. URL: git@bitbucket.org:juniorjbn/php-test.git
9. Ref: master
10. ContextDir: /
11. From Image: ImageStreamTag openshift/php:5.6
12. Output to: ImageStreamTag site:latest
13. Build Run Policy: Serial
14. Triggered by: ImageChange, Config
15. Webhook Generic:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854
e98/generic
16. Webhook GitHub:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f
120/github
17. Build Status Duration Creation Time
18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 4 days ago
4. Labels: app=site
i. template=site
5. Annotations: openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Strategy: Source
8. URL: git@bitbucket.org:juniorjbn/php-test.git
9. Ref: master
10. ContextDir: /
11. From Image: ImageStreamTag openshift/php:5.6
12. Output to: ImageStreamTag site:latest
13. Build Run Policy: Serial
14. Triggered by: ImageChange, Config
15. Webhook Generic:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854
e98/generic
16. Webhook GitHub:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f
120/github
17. Build Status Duration Creation Time
18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 4 days ago
4. Labels: app=site
i. template=site
5. Annotations: openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Strategy: Source
8. URL: git@bitbucket.org:juniorjbn/php-test.git
9. Ref: master
10. ContextDir: /
11. From Image: ImageStreamTag openshift/php:5.6
12. Output to: ImageStreamTag site:latest
13. Build Run Policy: Serial
14. Triggered by: ImageChange, Config
15. Webhook Generic:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854
e98/generic
16. Webhook GitHub:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f
120/github
17. Build Status Duration Creation Time
18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 4 days ago
4. Labels: app=site
i. template=site
5. Annotations: openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Strategy: Source
8. URL: git@bitbucket.org:juniorjbn/php-test.git
9. Ref: master
10. ContextDir: /
11. From Image: ImageStreamTag openshift/php:5.6
12. Output to: ImageStreamTag site:latest
13. Build Run Policy: Serial
14. Triggered by: ImageChange, Config
15. Webhook Generic:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b508
54e98/generic
16. Webhook GitHub:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b
6f120/github
17. Build Status Duration Creation Time
18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
Build Binário
$ oc edit bc/app
spec.source:
type: Binary
Agora posso usar o cod local
$ oc start-build site --from-dir=.
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 4 days ago
4. Labels: app=site
i. template=site
5. Annotations: openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Strategy: Source
8. URL: git@bitbucket.org:juniorjbn/php-test.git
9. Ref: master
10. ContextDir: /
11. From Image: ImageStreamTag openshift/php:5.6
12. Output to: ImageStreamTag site:latest
13. Build Run Policy: Serial
14. Triggered by: ImageChange, Config
15. Webhook Generic:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854
e98/generic
16. Webhook GitHub:
a. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f
120/github
17. Build Status Duration Creation Time
18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
$ oc describe bc/site
1. Name: site
2. Namespace: workshop
3. Created: 6 days ago
4. Labels: app=site
5. template=site
6. Annotations: openshift.io/generated-by=GetupCloudWebConsole
7. Latest Version: 8
8. Strategy: Source
9. Binary: provided on build
10. From Image: ImageStreamTag openshift/php:5.6
11. Output to: ImageStreamTag site:latest
12. Build Run Policy: Serial
13. Triggered by: ImageChange, Config
14. Webhook Generic:
15. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854e98/generic
16. AllowEnv: false
17. Webhook GitHub:
18. URL:
https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f120/github
19. Build Status Duration Creation Time
20. site-8 failed 3s 2016-12-13 10:37:47 -0200 BRST
Build Binário
$ oc edit bc/app
spec.source:
type: Binary
Agora posso usar o cod local
$ oc start-build site --from-dir=.
Build Incremental
.s2i/bin/save-artifacts
#!/bin/bash
# tar cf - .composer composer.lock vendor
$ oc edit bc/site
#spec:
# strategy:
# sourceStrategy:
# incremental: true
.s2i/bin/assemble
#!/bin/bash
# if [ -d /tmp/artifacts/ ]; then
# echo "---> Restoring build artifacts from
/tmp/artifacts..."
# shopt -s dotglob
# mv -v /tmp/artifacts/* ./
# shopt -u dotglob
# fi
Build Incremental
.s2i/bin/save-artifacts
#!/bin/bash
# tar cf - .composer composer.lock vendor
$ oc edit bc/site
#spec:
# strategy:
# sourceStrategy:
# incremental: true
.s2i/bin/assemble
#!/bin/bash
# if [ -d /tmp/artifacts/ ]; then
# echo "---> Restoring build artifacts from
/tmp/artifacts..."
# shopt -s dotglob
# mv -v /tmp/artifacts/* ./
# shopt -u dotglob
# fi
Build Incremental
.s2i/bin/save-artifacts
#!/bin/bash
# tar cf - .composer composer.lock vendor
$ oc edit bc/site
#spec:
# strategy:
# sourceStrategy:
# incremental: true
.s2i/bin/assemble
#!/bin/bash
# if [ -d /tmp/artifacts/ ]; then
# echo "---> Restoring build artifacts from
/tmp/artifacts..."
# shopt -s dotglob
# mv -v /tmp/artifacts/* ./
# shopt -u dotglob
# fi
Build Incremental
.s2i/bin/save-artifacts
#!/bin/bash
# tar cf - .composer composer.lock vendor
$ oc edit bc/site
#spec:
# strategy:
# sourceStrategy:
# incremental: true
.s2i/bin/assemble
#!/bin/bash
# if [ -d /tmp/artifacts/ ]; then
# echo "---> Restoring build artifacts from
/tmp/artifacts..."
# shopt -s dotglob
# mv -v /tmp/artifacts/* ./
# shopt -u dotglob
# fi
DeploymentConfig
➔Recreate
➔Rolling
➔Blue/Green
➔A/B
$ oc describe dc/site
1. Name: site
2. Namespace: workshop
3. Created: 6 days ago
4. Labels: app=site
i. template=site
5. Annotations: iconClass=icon-php
i. openshift.io/generated-by=GetupCloudWebConsole
6. Latest Version: 6
7. Selector: deploymentconfig=site
8. Replicas: 1
9. Triggers: Image(site@latest, auto=true), Config
10.Strategy: Recreate
11.Template:
12. Labels: app=site
i. deploymentconfig=site
1. Containers:
2. php:
3. Image:
172.30.34.145:5000/workshop/site@sha256:84f1195cb9fb30ae5bdd8eba5c27f2f2db0da60b26b92838417659130e
aa
4. Port: 8080/TCP
5. Limits:
6. cpu: 366m
7. memory: 512Mi
8. Requests:
9. cpu: 10m
10. memory: 128Mi
11. Volume Mounts: <none>
12. Environment Variables:
13. PATH: /opt/app-root/src/bin:/opt/app-
root/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/opt/rh/rh-php56/root/usr/bin
14. STI_SCRIPTS_URL: image:///usr/libexec/s2i
15. STI_SCRIPTS_PATH: /usr/libexec/s2i
16. HOME: /opt/app-root/src
17. BASH_ENV: /opt/app-root/etc/scl_enable
18. ENV: /opt/app-root/etc/scl_enable
19. PROMPT_COMMAND: . /opt/app-root/etc/scl_enable
20. PHP_VERSION: 5.6
21. No volumes.
DeploymentConfig
➔Recreate
➔Rolling
➔Blue/Green
➔A/B
1. type: Recreate
2. recreateParams:
3. mid:
4. execNewPod:
5. command:
6. - ./migrate-db
7. containerName: php
8. env:
9. - name: DATABASE_SERVICE_NAME
10. value: mysql
11. - name: DATABASE_NAME
12. value: site
13. - name: DATABASE_USER
14. value: admin
15. - name: DATABASE_PASSWORD
16. value: password
17. failurePolicy: Abort
DeploymentConfig
➔Recreate
➔Rolling
➔Blue/Green
➔A/B
1. strategy:
2. type: Rolling
3. resources: {}
4. rollingParams:
5. intervalSeconds: 1
6. maxSurge: 25%
7. maxUnavailable: 25%
8. timeoutSeconds: 600
9. updatePeriodSeconds: 1
DeploymentConfig
➔Recreate
➔Rolling
➔Blue/Green
➔A/B
1. kind: Route
2. metadata:
3. annotations:
4. haproxy.router.openshift.io/balance: roundrobin
5. openshift.io/generated-by: GetupCloudWebConsole
6. labels:
7. app: site
8. getup.io/component-name: site
9. name: siteab-workshop-getup-io
10. namespace: workshop
11.spec:
12. alternateBackends:
13. - kind: Service
14. name: siteb
15. weight: 30
16. host: siteab-workshop.getup.io
17. to:
18. kind: Service
19. name: site
20. weight: 70
21.status:
22. host: siteab-workshop.getup.io
23. routerName: router
1. kind: Route
2. metadata:
3. annotations:
4. haproxy.router.openshift.io/balance: roundrobin
5. openshift.io/generated-by: GetupCloudWebConsole
6. labels:
7. app: site
8. getup.io/component-name: site
9. name: siteab-workshop-getup-io
10. namespace: workshop
11.spec:
12. alternateBackends:
13. - kind: Service
14. name: siteb
15. weight: 30
16. host: siteab-workshop.getup.io
17. to:
18. kind: Service
19. name: site
20. weight: 70
21.status:
22. host: siteab-workshop.getup.io
23. routerName: router
DeploymentConfig
➔Recreate
➔Rolling
➔Blue/Green
➔A/B
1. spec:
2. host: site-workshop.getup.io
3. port:
4. targetPort: 8080-tcp
5. tls:
6. insecureEdgeTerminationPolicy: Allow
7. termination: edge
8. to:
9. kind: Service
10. name: siteb
11. weight: 100
12.status:
13. ingress:
14. - conditions:
15. - lastTransitionTime: 2016-12-08T21:44:51Z
16. status: "True"
17. type: Admitted
18. host: site-workshop.getup.io
19. routerName: router
Scaling
VS
Scaling
VS
Scaling
VS
Application Healing
Application Healing
- Readiness
- Liveness
Workshop-Build e deploy avançado com Openshift e Kubernetes
Workshop-Build e deploy avançado com Openshift e Kubernetes

More Related Content

What's hot

11 tools for your PHP devops stack
11 tools for your PHP devops stack11 tools for your PHP devops stack
11 tools for your PHP devops stackKris Buytaert
 
Fabricio - Docker deploy automation
Fabricio - Docker deploy automationFabricio - Docker deploy automation
Fabricio - Docker deploy automationRinat Khabibiev
 
Deploying configurable frontend web application containers
Deploying configurable frontend web application containersDeploying configurable frontend web application containers
Deploying configurable frontend web application containersJosé Moreira
 
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and Beyond
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and BeyondDrupal Day 2012 - Automating Drupal Development: Make!les, Features and Beyond
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and BeyondDrupalDay
 
JSUG - Spring by Christoph Pickl
JSUG - Spring by Christoph PicklJSUG - Spring by Christoph Pickl
JSUG - Spring by Christoph PicklChristoph Pickl
 
Search and play more than 50 clips
Search and play more than 50 clipsSearch and play more than 50 clips
Search and play more than 50 clipsphanhung20
 
How to host an app for $20 in 20min using buildout and hostout
How to host an app  for $20 in 20min using buildout and hostoutHow to host an app  for $20 in 20min using buildout and hostout
How to host an app for $20 in 20min using buildout and hostoutDylan Jay
 
Spring Booted, But... @JCConf 16', Taiwan
Spring Booted, But... @JCConf 16', TaiwanSpring Booted, But... @JCConf 16', Taiwan
Spring Booted, But... @JCConf 16', TaiwanPei-Tang Huang
 
以Vue開發電子商務網站
架構與眉角
以Vue開發電子商務網站
架構與眉角以Vue開發電子商務網站
架構與眉角
以Vue開發電子商務網站
架構與眉角Mei-yu Chen
 
WordPress mit Composer und Git verwalten
WordPress mit Composer und Git verwaltenWordPress mit Composer und Git verwalten
WordPress mit Composer und Git verwaltenWalter Ebert
 
Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017Matt Raible
 
Vue js 大型專案架構
Vue js 大型專案架構Vue js 大型專案架構
Vue js 大型專案架構Hina Chen
 
Using Composer with Drupal and Drush
Using Composer with Drupal and DrushUsing Composer with Drupal and Drush
Using Composer with Drupal and DrushPantheon
 
Deploying WP Multisite to Heroku
Deploying WP Multisite to HerokuDeploying WP Multisite to Heroku
Deploying WP Multisite to HerokuJussi Kinnula
 
Famo.us - New generation of HTML5 Web Application Framework
Famo.us - New generation of HTML5 Web Application FrameworkFamo.us - New generation of HTML5 Web Application Framework
Famo.us - New generation of HTML5 Web Application FrameworkHina Chen
 
Die .htaccess richtig nutzen
Die .htaccess richtig nutzenDie .htaccess richtig nutzen
Die .htaccess richtig nutzenWalter Ebert
 
Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Yuriy Senko
 
Python Flask app deployed to OPenShift using Wercker CI
Python Flask app deployed to OPenShift using Wercker CIPython Flask app deployed to OPenShift using Wercker CI
Python Flask app deployed to OPenShift using Wercker CIBruno Rocha
 
Hacking pokemon go [droidcon tel aviv 2016]
Hacking pokemon go [droidcon tel aviv 2016]Hacking pokemon go [droidcon tel aviv 2016]
Hacking pokemon go [droidcon tel aviv 2016]Guy Lis
 

What's hot (20)

Apache httpd v2.4
Apache httpd v2.4Apache httpd v2.4
Apache httpd v2.4
 
11 tools for your PHP devops stack
11 tools for your PHP devops stack11 tools for your PHP devops stack
11 tools for your PHP devops stack
 
Fabricio - Docker deploy automation
Fabricio - Docker deploy automationFabricio - Docker deploy automation
Fabricio - Docker deploy automation
 
Deploying configurable frontend web application containers
Deploying configurable frontend web application containersDeploying configurable frontend web application containers
Deploying configurable frontend web application containers
 
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and Beyond
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and BeyondDrupal Day 2012 - Automating Drupal Development: Make!les, Features and Beyond
Drupal Day 2012 - Automating Drupal Development: Make!les, Features and Beyond
 
JSUG - Spring by Christoph Pickl
JSUG - Spring by Christoph PicklJSUG - Spring by Christoph Pickl
JSUG - Spring by Christoph Pickl
 
Search and play more than 50 clips
Search and play more than 50 clipsSearch and play more than 50 clips
Search and play more than 50 clips
 
How to host an app for $20 in 20min using buildout and hostout
How to host an app  for $20 in 20min using buildout and hostoutHow to host an app  for $20 in 20min using buildout and hostout
How to host an app for $20 in 20min using buildout and hostout
 
Spring Booted, But... @JCConf 16', Taiwan
Spring Booted, But... @JCConf 16', TaiwanSpring Booted, But... @JCConf 16', Taiwan
Spring Booted, But... @JCConf 16', Taiwan
 
以Vue開發電子商務網站
架構與眉角
以Vue開發電子商務網站
架構與眉角以Vue開發電子商務網站
架構與眉角
以Vue開發電子商務網站
架構與眉角
 
WordPress mit Composer und Git verwalten
WordPress mit Composer und Git verwaltenWordPress mit Composer und Git verwalten
WordPress mit Composer und Git verwalten
 
Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017Front Ends for Back End Developers - Spring I/O 2017
Front Ends for Back End Developers - Spring I/O 2017
 
Vue js 大型專案架構
Vue js 大型專案架構Vue js 大型專案架構
Vue js 大型專案架構
 
Using Composer with Drupal and Drush
Using Composer with Drupal and DrushUsing Composer with Drupal and Drush
Using Composer with Drupal and Drush
 
Deploying WP Multisite to Heroku
Deploying WP Multisite to HerokuDeploying WP Multisite to Heroku
Deploying WP Multisite to Heroku
 
Famo.us - New generation of HTML5 Web Application Framework
Famo.us - New generation of HTML5 Web Application FrameworkFamo.us - New generation of HTML5 Web Application Framework
Famo.us - New generation of HTML5 Web Application Framework
 
Die .htaccess richtig nutzen
Die .htaccess richtig nutzenDie .htaccess richtig nutzen
Die .htaccess richtig nutzen
 
Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)Python from zero to hero (Twitter Explorer)
Python from zero to hero (Twitter Explorer)
 
Python Flask app deployed to OPenShift using Wercker CI
Python Flask app deployed to OPenShift using Wercker CIPython Flask app deployed to OPenShift using Wercker CI
Python Flask app deployed to OPenShift using Wercker CI
 
Hacking pokemon go [droidcon tel aviv 2016]
Hacking pokemon go [droidcon tel aviv 2016]Hacking pokemon go [droidcon tel aviv 2016]
Hacking pokemon go [droidcon tel aviv 2016]
 

Viewers also liked

Openshift/Kubernetes integration with Apache YARN
Openshift/Kubernetes integration with Apache YARNOpenshift/Kubernetes integration with Apache YARN
Openshift/Kubernetes integration with Apache YARNverbal1714
 
OpenShift meetup Bangalore
OpenShift meetup BangaloreOpenShift meetup Bangalore
OpenShift meetup BangaloreSuraj Deshmukh
 
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShiftUltimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShiftAndy Pemberton
 
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context ConstraintsAlessandro Arrichiello
 
OpenShift In a Nutshell - Episode 04 - Infrastructure part II
OpenShift In a Nutshell - Episode 04 - Infrastructure part IIOpenShift In a Nutshell - Episode 04 - Infrastructure part II
OpenShift In a Nutshell - Episode 04 - Infrastructure part IIBehnam Loghmani
 
OpenShift In a Nutshell - Episode 03 - Infrastructure part I
OpenShift In a Nutshell - Episode 03 - Infrastructure part IOpenShift In a Nutshell - Episode 03 - Infrastructure part I
OpenShift In a Nutshell - Episode 03 - Infrastructure part IBehnam Loghmani
 
OpenShift In a Nutshell - Episode 05 - Core Concepts Part I
OpenShift In a Nutshell - Episode 05 - Core Concepts Part IOpenShift In a Nutshell - Episode 05 - Core Concepts Part I
OpenShift In a Nutshell - Episode 05 - Core Concepts Part IBehnam Loghmani
 
OpenShift In a Nutshell - Episode 06 - Core Concepts Part II
OpenShift In a Nutshell - Episode 06 - Core Concepts Part IIOpenShift In a Nutshell - Episode 06 - Core Concepts Part II
OpenShift In a Nutshell - Episode 06 - Core Concepts Part IIBehnam Loghmani
 
Openshift Container Platform on Azure
Openshift Container Platform on AzureOpenshift Container Platform on Azure
Openshift Container Platform on AzureGlenn West
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliverySwapnil Jain
 
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016ManageIQ
 
OpenShift In a Nutshell - Episode 02 - Architecture
OpenShift In a Nutshell - Episode 02 - ArchitectureOpenShift In a Nutshell - Episode 02 - Architecture
OpenShift In a Nutshell - Episode 02 - ArchitectureBehnam Loghmani
 
Developing microservices with wildfly swarm and deploying on openshift
Developing microservices with wildfly swarm and deploying on openshiftDeveloping microservices with wildfly swarm and deploying on openshift
Developing microservices with wildfly swarm and deploying on openshiftandreas kuncoro
 
Minishift (Run OpenShift locally)
Minishift (Run OpenShift locally)Minishift (Run OpenShift locally)
Minishift (Run OpenShift locally)Praveen Kumar
 
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...Jeremy Eder
 
Microservices with JBoss EAP & OpenShift
Microservices with JBoss EAP & OpenShiftMicroservices with JBoss EAP & OpenShift
Microservices with JBoss EAP & OpenShiftbobmcwhirter
 
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...Puppet
 
OpenShift In a Nutshell - Episode 01 - Introduction
OpenShift In a Nutshell - Episode 01 - IntroductionOpenShift In a Nutshell - Episode 01 - Introduction
OpenShift In a Nutshell - Episode 01 - IntroductionBehnam Loghmani
 

Viewers also liked (20)

Openshift/Kubernetes integration with Apache YARN
Openshift/Kubernetes integration with Apache YARNOpenshift/Kubernetes integration with Apache YARN
Openshift/Kubernetes integration with Apache YARN
 
OpenShift meetup Bangalore
OpenShift meetup BangaloreOpenShift meetup Bangalore
OpenShift meetup Bangalore
 
Openshift presentation
Openshift presentationOpenshift presentation
Openshift presentation
 
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShiftUltimate DevOps - Jenkins Enterprise & Red Hat OpenShift
Ultimate DevOps - Jenkins Enterprise & Red Hat OpenShift
 
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
[Devconf.cz][2017] Understanding OpenShift Security Context Constraints
 
OpenShift In a Nutshell - Episode 04 - Infrastructure part II
OpenShift In a Nutshell - Episode 04 - Infrastructure part IIOpenShift In a Nutshell - Episode 04 - Infrastructure part II
OpenShift In a Nutshell - Episode 04 - Infrastructure part II
 
OpenShift In a Nutshell - Episode 03 - Infrastructure part I
OpenShift In a Nutshell - Episode 03 - Infrastructure part IOpenShift In a Nutshell - Episode 03 - Infrastructure part I
OpenShift In a Nutshell - Episode 03 - Infrastructure part I
 
OpenShift In a Nutshell - Episode 05 - Core Concepts Part I
OpenShift In a Nutshell - Episode 05 - Core Concepts Part IOpenShift In a Nutshell - Episode 05 - Core Concepts Part I
OpenShift In a Nutshell - Episode 05 - Core Concepts Part I
 
OpenShift In a Nutshell - Episode 06 - Core Concepts Part II
OpenShift In a Nutshell - Episode 06 - Core Concepts Part IIOpenShift In a Nutshell - Episode 06 - Core Concepts Part II
OpenShift In a Nutshell - Episode 06 - Core Concepts Part II
 
Openshift Container Platform on Azure
Openshift Container Platform on AzureOpenshift Container Platform on Azure
Openshift Container Platform on Azure
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous Delivery
 
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
 
OpenShift In a Nutshell - Episode 02 - Architecture
OpenShift In a Nutshell - Episode 02 - ArchitectureOpenShift In a Nutshell - Episode 02 - Architecture
OpenShift In a Nutshell - Episode 02 - Architecture
 
Developing microservices with wildfly swarm and deploying on openshift
Developing microservices with wildfly swarm and deploying on openshiftDeveloping microservices with wildfly swarm and deploying on openshift
Developing microservices with wildfly swarm and deploying on openshift
 
Minishift (Run OpenShift locally)
Minishift (Run OpenShift locally)Minishift (Run OpenShift locally)
Minishift (Run OpenShift locally)
 
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...KubeCon NA, Seattle, 2016:  Performance and Scalability Tuning Kubernetes for...
KubeCon NA, Seattle, 2016: Performance and Scalability Tuning Kubernetes for...
 
Microservices with JBoss EAP & OpenShift
Microservices with JBoss EAP & OpenShiftMicroservices with JBoss EAP & OpenShift
Microservices with JBoss EAP & OpenShift
 
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...
PuppetConf 2016: Using Puppet with Kubernetes and OpenShift – Diane Mueller, ...
 
OpenShift In a Nutshell - Episode 01 - Introduction
OpenShift In a Nutshell - Episode 01 - IntroductionOpenShift In a Nutshell - Episode 01 - Introduction
OpenShift In a Nutshell - Episode 01 - Introduction
 
OpenShift on OpenStack with Kuryr
OpenShift on OpenStack with KuryrOpenShift on OpenStack with Kuryr
OpenShift on OpenStack with Kuryr
 

Similar to Workshop-Build e deploy avançado com Openshift e Kubernetes

Coscup x ruby conf tw 2021 google cloud buildpacks 剖析與實踐
Coscup x ruby conf tw 2021  google cloud buildpacks 剖析與實踐Coscup x ruby conf tw 2021  google cloud buildpacks 剖析與實踐
Coscup x ruby conf tw 2021 google cloud buildpacks 剖析與實踐KAI CHU CHUNG
 
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...Ted Won
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017MarcinStachniuk
 
Gdg cloud taipei ddt meetup #53 buildpack
Gdg cloud taipei ddt meetup #53 buildpackGdg cloud taipei ddt meetup #53 buildpack
Gdg cloud taipei ddt meetup #53 buildpackKAI CHU CHUNG
 
Scaling Development Environments with Docker
Scaling Development Environments with DockerScaling Development Environments with Docker
Scaling Development Environments with DockerDocker, Inc.
 
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Jian-Hong Pan
 
Running MongoDB Enterprise on Kubernetes
Running MongoDB Enterprise on KubernetesRunning MongoDB Enterprise on Kubernetes
Running MongoDB Enterprise on KubernetesAriel Jatib
 
Acquia BLT for the Win, or How to speed up the project setup, development an...
Acquia BLT for the Win, or  How to speed up the project setup, development an...Acquia BLT for the Win, or  How to speed up the project setup, development an...
Acquia BLT for the Win, or How to speed up the project setup, development an...DrupalCamp Kyiv
 
Using Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsUsing Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsSander van der Burg
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Yury Pliashkou
 
20150317 firefox os_studymtg_engver
20150317 firefox os_studymtg_engver20150317 firefox os_studymtg_engver
20150317 firefox os_studymtg_engverNaoki Sekiguchi
 
Quick and Dirty Python Deployments with Heroku
Quick and Dirty Python Deployments with HerokuQuick and Dirty Python Deployments with Heroku
Quick and Dirty Python Deployments with HerokuDaniel Pritchett
 
Building with Firebase
Building with FirebaseBuilding with Firebase
Building with FirebaseMike Fowler
 
Java microservicesdockerdockerhubusecase2
Java microservicesdockerdockerhubusecase2Java microservicesdockerdockerhubusecase2
Java microservicesdockerdockerhubusecase2Subramanyam Vemala
 
Persistent mobile JavaScript
Persistent mobile JavaScriptPersistent mobile JavaScript
Persistent mobile JavaScriptYorick Phoenix
 
Sencha touchonbb10 bootcamp
Sencha touchonbb10 bootcampSencha touchonbb10 bootcamp
Sencha touchonbb10 bootcampn_adam_stanley
 
How to Webpack your Django!
How to Webpack your Django!How to Webpack your Django!
How to Webpack your Django!David Gibbons
 

Similar to Workshop-Build e deploy avançado com Openshift e Kubernetes (20)

Coscup x ruby conf tw 2021 google cloud buildpacks 剖析與實踐
Coscup x ruby conf tw 2021  google cloud buildpacks 剖析與實踐Coscup x ruby conf tw 2021  google cloud buildpacks 剖析與實踐
Coscup x ruby conf tw 2021 google cloud buildpacks 剖析與實踐
 
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
 
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
Continuous Delivery w projekcie Open Source - Marcin Stachniuk - DevCrowd 2017
 
Gdg cloud taipei ddt meetup #53 buildpack
Gdg cloud taipei ddt meetup #53 buildpackGdg cloud taipei ddt meetup #53 buildpack
Gdg cloud taipei ddt meetup #53 buildpack
 
Scaling Development Environments with Docker
Scaling Development Environments with DockerScaling Development Environments with Docker
Scaling Development Environments with Docker
 
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
 
Running MongoDB Enterprise on Kubernetes
Running MongoDB Enterprise on KubernetesRunning MongoDB Enterprise on Kubernetes
Running MongoDB Enterprise on Kubernetes
 
Acquia BLT for the Win, or How to speed up the project setup, development an...
Acquia BLT for the Win, or  How to speed up the project setup, development an...Acquia BLT for the Win, or  How to speed up the project setup, development an...
Acquia BLT for the Win, or How to speed up the project setup, development an...
 
Using Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsUsing Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutions
 
How to Build & Use OpenCL on OpenCV & Android NDK
How to Build & Use OpenCL on OpenCV & Android NDKHow to Build & Use OpenCL on OpenCV & Android NDK
How to Build & Use OpenCL on OpenCV & Android NDK
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11
 
20150317 firefox os_studymtg_engver
20150317 firefox os_studymtg_engver20150317 firefox os_studymtg_engver
20150317 firefox os_studymtg_engver
 
Yobi d2 naver(create)
Yobi d2 naver(create)Yobi d2 naver(create)
Yobi d2 naver(create)
 
Quick and Dirty Python Deployments with Heroku
Quick and Dirty Python Deployments with HerokuQuick and Dirty Python Deployments with Heroku
Quick and Dirty Python Deployments with Heroku
 
Understanding meteor
Understanding meteorUnderstanding meteor
Understanding meteor
 
Building with Firebase
Building with FirebaseBuilding with Firebase
Building with Firebase
 
Java microservicesdockerdockerhubusecase2
Java microservicesdockerdockerhubusecase2Java microservicesdockerdockerhubusecase2
Java microservicesdockerdockerhubusecase2
 
Persistent mobile JavaScript
Persistent mobile JavaScriptPersistent mobile JavaScript
Persistent mobile JavaScript
 
Sencha touchonbb10 bootcamp
Sencha touchonbb10 bootcampSencha touchonbb10 bootcamp
Sencha touchonbb10 bootcamp
 
How to Webpack your Django!
How to Webpack your Django!How to Webpack your Django!
How to Webpack your Django!
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 

Workshop-Build e deploy avançado com Openshift e Kubernetes

  • 2.
  • 4.
  • 7.
  • 8. S2i + OC = ➔Assenble ➔Run
  • 10. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 4 days ago 4. Labels: app=site i. template=site 5. Annotations: openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Strategy: Source 8. URL: git@bitbucket.org:juniorjbn/php-test.git 9. Ref: master 10. ContextDir: / 11. From Image: ImageStreamTag openshift/php:5.6 12. Output to: ImageStreamTag site:latest 13. Build Run Policy: Serial 14. Triggered by: ImageChange, Config 15. Webhook Generic: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854 e98/generic 16. Webhook GitHub: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f 120/github 17. Build Status Duration Creation Time 18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
  • 11. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 4 days ago 4. Labels: app=site i. template=site 5. Annotations: openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Strategy: Source 8. URL: git@bitbucket.org:juniorjbn/php-test.git 9. Ref: master 10. ContextDir: / 11. From Image: ImageStreamTag openshift/php:5.6 12. Output to: ImageStreamTag site:latest 13. Build Run Policy: Serial 14. Triggered by: ImageChange, Config 15. Webhook Generic: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854 e98/generic 16. Webhook GitHub: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f 120/github 17. Build Status Duration Creation Time 18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
  • 12. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 4 days ago 4. Labels: app=site i. template=site 5. Annotations: openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Strategy: Source 8. URL: git@bitbucket.org:juniorjbn/php-test.git 9. Ref: master 10. ContextDir: / 11. From Image: ImageStreamTag openshift/php:5.6 12. Output to: ImageStreamTag site:latest 13. Build Run Policy: Serial 14. Triggered by: ImageChange, Config 15. Webhook Generic: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854 e98/generic 16. Webhook GitHub: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f 120/github 17. Build Status Duration Creation Time 18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
  • 13. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 4 days ago 4. Labels: app=site i. template=site 5. Annotations: openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Strategy: Source 8. URL: git@bitbucket.org:juniorjbn/php-test.git 9. Ref: master 10. ContextDir: / 11. From Image: ImageStreamTag openshift/php:5.6 12. Output to: ImageStreamTag site:latest 13. Build Run Policy: Serial 14. Triggered by: ImageChange, Config 15. Webhook Generic: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b508 54e98/generic 16. Webhook GitHub: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b 6f120/github 17. Build Status Duration Creation Time 18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
  • 14. Build Binário $ oc edit bc/app spec.source: type: Binary Agora posso usar o cod local $ oc start-build site --from-dir=.
  • 15. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 4 days ago 4. Labels: app=site i. template=site 5. Annotations: openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Strategy: Source 8. URL: git@bitbucket.org:juniorjbn/php-test.git 9. Ref: master 10. ContextDir: / 11. From Image: ImageStreamTag openshift/php:5.6 12. Output to: ImageStreamTag site:latest 13. Build Run Policy: Serial 14. Triggered by: ImageChange, Config 15. Webhook Generic: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854 e98/generic 16. Webhook GitHub: a. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f 120/github 17. Build Status Duration Creation Time 18. site-3 complete 1m34s 2016-12-08 20:37:39 -0200 BRST
  • 16. $ oc describe bc/site 1. Name: site 2. Namespace: workshop 3. Created: 6 days ago 4. Labels: app=site 5. template=site 6. Annotations: openshift.io/generated-by=GetupCloudWebConsole 7. Latest Version: 8 8. Strategy: Source 9. Binary: provided on build 10. From Image: ImageStreamTag openshift/php:5.6 11. Output to: ImageStreamTag site:latest 12. Build Run Policy: Serial 13. Triggered by: ImageChange, Config 14. Webhook Generic: 15. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/42be0bdf5222c84b50854e98/generic 16. AllowEnv: false 17. Webhook GitHub: 18. URL: https://api.getupcloud.com:443/oapi/v1/namespaces/workshop/buildconfigs/site/webhooks/9ac2640292ebe215c9b6f120/github 19. Build Status Duration Creation Time 20. site-8 failed 3s 2016-12-13 10:37:47 -0200 BRST
  • 17. Build Binário $ oc edit bc/app spec.source: type: Binary Agora posso usar o cod local $ oc start-build site --from-dir=.
  • 18. Build Incremental .s2i/bin/save-artifacts #!/bin/bash # tar cf - .composer composer.lock vendor $ oc edit bc/site #spec: # strategy: # sourceStrategy: # incremental: true .s2i/bin/assemble #!/bin/bash # if [ -d /tmp/artifacts/ ]; then # echo "---> Restoring build artifacts from /tmp/artifacts..." # shopt -s dotglob # mv -v /tmp/artifacts/* ./ # shopt -u dotglob # fi
  • 19. Build Incremental .s2i/bin/save-artifacts #!/bin/bash # tar cf - .composer composer.lock vendor $ oc edit bc/site #spec: # strategy: # sourceStrategy: # incremental: true .s2i/bin/assemble #!/bin/bash # if [ -d /tmp/artifacts/ ]; then # echo "---> Restoring build artifacts from /tmp/artifacts..." # shopt -s dotglob # mv -v /tmp/artifacts/* ./ # shopt -u dotglob # fi
  • 20. Build Incremental .s2i/bin/save-artifacts #!/bin/bash # tar cf - .composer composer.lock vendor $ oc edit bc/site #spec: # strategy: # sourceStrategy: # incremental: true .s2i/bin/assemble #!/bin/bash # if [ -d /tmp/artifacts/ ]; then # echo "---> Restoring build artifacts from /tmp/artifacts..." # shopt -s dotglob # mv -v /tmp/artifacts/* ./ # shopt -u dotglob # fi
  • 21. Build Incremental .s2i/bin/save-artifacts #!/bin/bash # tar cf - .composer composer.lock vendor $ oc edit bc/site #spec: # strategy: # sourceStrategy: # incremental: true .s2i/bin/assemble #!/bin/bash # if [ -d /tmp/artifacts/ ]; then # echo "---> Restoring build artifacts from /tmp/artifacts..." # shopt -s dotglob # mv -v /tmp/artifacts/* ./ # shopt -u dotglob # fi
  • 23. $ oc describe dc/site 1. Name: site 2. Namespace: workshop 3. Created: 6 days ago 4. Labels: app=site i. template=site 5. Annotations: iconClass=icon-php i. openshift.io/generated-by=GetupCloudWebConsole 6. Latest Version: 6 7. Selector: deploymentconfig=site 8. Replicas: 1 9. Triggers: Image(site@latest, auto=true), Config 10.Strategy: Recreate 11.Template: 12. Labels: app=site i. deploymentconfig=site
  • 24. 1. Containers: 2. php: 3. Image: 172.30.34.145:5000/workshop/site@sha256:84f1195cb9fb30ae5bdd8eba5c27f2f2db0da60b26b92838417659130e aa 4. Port: 8080/TCP 5. Limits: 6. cpu: 366m 7. memory: 512Mi 8. Requests: 9. cpu: 10m 10. memory: 128Mi 11. Volume Mounts: <none> 12. Environment Variables: 13. PATH: /opt/app-root/src/bin:/opt/app- root/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/opt/rh/rh-php56/root/usr/bin 14. STI_SCRIPTS_URL: image:///usr/libexec/s2i 15. STI_SCRIPTS_PATH: /usr/libexec/s2i 16. HOME: /opt/app-root/src 17. BASH_ENV: /opt/app-root/etc/scl_enable 18. ENV: /opt/app-root/etc/scl_enable 19. PROMPT_COMMAND: . /opt/app-root/etc/scl_enable 20. PHP_VERSION: 5.6 21. No volumes.
  • 26. 1. type: Recreate 2. recreateParams: 3. mid: 4. execNewPod: 5. command: 6. - ./migrate-db 7. containerName: php 8. env: 9. - name: DATABASE_SERVICE_NAME 10. value: mysql 11. - name: DATABASE_NAME 12. value: site 13. - name: DATABASE_USER 14. value: admin 15. - name: DATABASE_PASSWORD 16. value: password 17. failurePolicy: Abort
  • 28. 1. strategy: 2. type: Rolling 3. resources: {} 4. rollingParams: 5. intervalSeconds: 1 6. maxSurge: 25% 7. maxUnavailable: 25% 8. timeoutSeconds: 600 9. updatePeriodSeconds: 1
  • 30. 1. kind: Route 2. metadata: 3. annotations: 4. haproxy.router.openshift.io/balance: roundrobin 5. openshift.io/generated-by: GetupCloudWebConsole 6. labels: 7. app: site 8. getup.io/component-name: site 9. name: siteab-workshop-getup-io 10. namespace: workshop 11.spec: 12. alternateBackends: 13. - kind: Service 14. name: siteb 15. weight: 30 16. host: siteab-workshop.getup.io 17. to: 18. kind: Service 19. name: site 20. weight: 70 21.status: 22. host: siteab-workshop.getup.io 23. routerName: router
  • 31. 1. kind: Route 2. metadata: 3. annotations: 4. haproxy.router.openshift.io/balance: roundrobin 5. openshift.io/generated-by: GetupCloudWebConsole 6. labels: 7. app: site 8. getup.io/component-name: site 9. name: siteab-workshop-getup-io 10. namespace: workshop 11.spec: 12. alternateBackends: 13. - kind: Service 14. name: siteb 15. weight: 30 16. host: siteab-workshop.getup.io 17. to: 18. kind: Service 19. name: site 20. weight: 70 21.status: 22. host: siteab-workshop.getup.io 23. routerName: router
  • 33. 1. spec: 2. host: site-workshop.getup.io 3. port: 4. targetPort: 8080-tcp 5. tls: 6. insecureEdgeTerminationPolicy: Allow 7. termination: edge 8. to: 9. kind: Service 10. name: siteb 11. weight: 100 12.status: 13. ingress: 14. - conditions: 15. - lastTransitionTime: 2016-12-08T21:44:51Z 16. status: "True" 17. type: Admitted 18. host: site-workshop.getup.io 19. routerName: router