SlideShare a Scribd company logo
1 of 42
Download to read offline
From development to continuous deployment.
Docker
Alin Voinea
Eau de Web, Romania
Plone
&
What is?
What is Docker?
Docker is for your system...
What is Docker?
...what virtualenv is for Python
What is Docker?
● Isolated environment
● Same environment (Linux, Mac, Windows...)
● Same environment (Devel, Production)
● Use your favorite Linux distribution
● ...or, build it from scratch
Before Docker
Installing and running Plone
without Docker
Plone - w/o Docker
Libraries
● libz (dev)
● libjpeg (dev)*
● readline (dev)*
● libexpat (dev)
● libssl or openssl (dev)
● libxml2 >= 2.7.8 (dev)*
● libxslt >= 1.1.26 (dev)*
Source:docs.plone.org
Python
● Python 2.7 (dev), built with support for
expat (xml.parsers.expat), zlib and ssl.
● (Python XML support may be a separate
package on some platforms.)*
● virtualenv*
Plone - w/o Docker
Minimal build
~/$ mkdir Plone-5
~/$ cd Plone-5
~/Plone-5$ virtualenv-2.7 zinstance
~/Plone-5$ cd zinstance
~/Plone-5/zinstance$ bin/pip install zc.buildout
~/Plone-5/zinstance$
echo """
[buildout]
extends =
http://dist.plone.org/release/5-latest/versions.cfg
parts =
instance
[instance]
recipe = plone.recipe.zope2instance
user = admin:admin
http-address = 8080
eggs =
Plone
Pillow
""" > buildout.cfg
Source:docs.plone.org
Plone - w/o Docker
This will start a long download and build process ...
Errors like "SyntaxError: ("'return' outside function"..."" may be ignored.
After it finished you can start Plone in foreground-mode with:
$ bin/buildout
$ bin/instance fg
Source:docs.plone.org
Installing and running Plone
with Docker
Plone - w/ Docker
$ docker run -p 8080:8080 plone
hub.docker.com/_/plone
Plone Add-ons
Plone Add-ons
$ docker run 
-e ADDONS=”eea.facetednavigation collective.easyform” 
plone
Develop Plone Add-ons
$ mkdir src
$ cd src
$ git clone https://github.com/collective/eea.facetednavigation
$ chown -R 500 ../src
$ docker run 
-e ADDONS=”eea.facetednavigation” 
-e DEVELOP=”src/eea.facetednavigation” 
-v /host/path/to/src:/plone/instance/src 
plone fg
Debugging - pdb.set_trace()
● Run Plone from the inside of the container
$ docker run -it -e… plone bash
$ bin/instance fg
.
..
...
Zope ready to handle requests
...
(pdb)
Storage
Where is my Data.fs?
● Docker volume
$ docker run plone
$ docker volume ls
local f2b18118ef8c5e7c9ef10ef418f27e2a51502220ddecc218c9d28f
● Default location
$ ls /var/lib/docker/volumes
f2b18118ef8c5e7c9ef10ef418f27e2a51502220ddecc218c9d28f
Where is my Data.fs?
● Docker volume labels
$ docker run -v plone-data:/data plone
$ docker volume ls
plone-data
Where is my Data.fs?
● Unlabeled Docker volumes
$ docker run --name my-plone plone
$ docker volume ls
e2c080c412bc4d33b7d740ca7fee25
● On remove:
$ docker rm -v my-plone
$ docker volume ls
OMG, WHERE IS MY DATA?
Where is my Data.fs?
● Always LABEL your Docker volumes to avoid data loss
$ docker run --name=my-plone -v plone-data:/data plone
● On remove
$ docker rm -v my-plone
$ docker volume ls
plone-data
● Explicitly remove volumes:
$ docker volume rm plone-data
ZEO
# zeo client 1
$ docker run --link=zeo 
-e ZEO_ADDRESS=zeo:8100 plone
ZEO Server / ZEO Clients
# zeo server
$ docker run --name=zeo plone zeoserver
# zeo client 1
$ docker run --link=zeo 
-e ZEO_ADDRESS=zeo:8100 plone
Extend
Extending
● extended_buildout.cfg
● Dockerfile
Extend: extended_buildout.cfg
[buildout]
eggs +=
plone.restapi
collective.easyform
collective.solr
eea.facetednavigation
Extend: Dockerfile
FROM plone:5.0.6
USER root
RUN apt-get install -y ...
USER plone
COPY extended_buildout.cfg /plone/instance/
RUN bin/buildout -c my_buildout.cfg
Extend: Build & Run
$ docker build -t my-plone:5 .
$ docker run my-plone:5
Extend: Dockerfile documentation
docs.docker.com/engine/reference/builder
Orchestration: Single host
$ pip install docker-compose
Docker Compose: Plone & ZEO
$ vim docker-compose.yml
$ docker-compose up
$ docker-compose scale plone=3
version: "2"
volumes:
plone-data:
driver: local
services:
plone:
image: plone
environment:
- ZEO_ADDRESS=zeo:8100
zeo:
image: plone
command: zeoserver
volumes:
- plone-data:/data
Docker Compose: Load balancer
$ vim docker-compose.yml
$ docker-compose up
services:
...
load-balancer :
image: eeacms/haproxy
ports:
- 80:5000
- 1936:1936
environment:
- BACKENDS=plone
- BACKENDS_PORT=8080
- DNS_ENABLED=True
Docker Compose: Demo
https://youtu.be/DumoVlrOk4w
Docker Compose: Documentation
docs.docker.com/compose
Orchestration: Multiple hosts
Rancher
“A Complete Platform for Running
Containers”
Rancher: Install & running
$ docker run -p 8080:8080 rancher/server
Rancher: Demo
https://youtu.be/44zzuAUS-1M
Continuous Deployment
Docs
● hub.docker.com/_/plone
● docs.plone.org (soon)
● docker.com
● rancher.com
● github.com/eea?query=docker
Thanks
● Sven Strack
● Antonio de Marinis
● Eau de Web
● Liana Voinea (my wife)
Docker and plone

More Related Content

What's hot

Usando docker en Azure
Usando docker en AzureUsando docker en Azure
Usando docker en AzureVíctor Moreno
 
Conan.io - The C/C++ package manager for Developers
Conan.io - The C/C++ package manager for DevelopersConan.io - The C/C++ package manager for Developers
Conan.io - The C/C++ package manager for DevelopersUilian Ries
 
DrupalCafe Vol.35 - Dockerで始めるDrupal
DrupalCafe Vol.35 - Dockerで始めるDrupalDrupalCafe Vol.35 - Dockerで始めるDrupal
DrupalCafe Vol.35 - Dockerで始めるDrupalYoshikazu Aoyama
 
Python - Flask - miniapp - ignite
Python - Flask - miniapp - ignitePython - Flask - miniapp - ignite
Python - Flask - miniapp - igniteMichal Haták
 
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)Ruoshi Ling
 
Docker in Action
Docker in ActionDocker in Action
Docker in ActionAlper Kanat
 
Iniciando com Docker
Iniciando com DockerIniciando com Docker
Iniciando com DockerEmmanuel Neri
 
Ratpack On the Docks
Ratpack On the DocksRatpack On the Docks
Ratpack On the DocksGR8Conf
 
Groovy Powered Clean Code
Groovy Powered Clean CodeGroovy Powered Clean Code
Groovy Powered Clean CodeGR8Conf
 
Docker - from development to production (PHPNW 2017-09-05)
Docker - from development to production (PHPNW 2017-09-05)Docker - from development to production (PHPNW 2017-09-05)
Docker - from development to production (PHPNW 2017-09-05)Toby Griffiths
 
Meetup #24 Docker for Node Developer
Meetup #24 Docker for Node DeveloperMeetup #24 Docker for Node Developer
Meetup #24 Docker for Node DeveloperMVP Microsoft
 
Builder and BuildKit
Builder and BuildKitBuilder and BuildKit
Builder and BuildKitMoby Project
 
Deploying a Pylons app to Google App Engine
Deploying a Pylons app to Google App EngineDeploying a Pylons app to Google App Engine
Deploying a Pylons app to Google App EngineJazkarta, Inc.
 
Gitlab - Creating C++ applications with Gitlab CI
Gitlab - Creating C++ applications with Gitlab CIGitlab - Creating C++ applications with Gitlab CI
Gitlab - Creating C++ applications with Gitlab CIUilian Ries
 
Docker Ecosystem: Part III - Machine
Docker Ecosystem: Part III - MachineDocker Ecosystem: Part III - Machine
Docker Ecosystem: Part III - MachineMario IC
 

What's hot (19)

Dockerizing pharo
Dockerizing pharoDockerizing pharo
Dockerizing pharo
 
Usando docker en Azure
Usando docker en AzureUsando docker en Azure
Usando docker en Azure
 
Conan.io - The C/C++ package manager for Developers
Conan.io - The C/C++ package manager for DevelopersConan.io - The C/C++ package manager for Developers
Conan.io - The C/C++ package manager for Developers
 
DrupalCafe Vol.35 - Dockerで始めるDrupal
DrupalCafe Vol.35 - Dockerで始めるDrupalDrupalCafe Vol.35 - Dockerで始めるDrupal
DrupalCafe Vol.35 - Dockerで始めるDrupal
 
Python - Flask - miniapp - ignite
Python - Flask - miniapp - ignitePython - Flask - miniapp - ignite
Python - Flask - miniapp - ignite
 
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
當專案漸趕,當遷移也不再那麼難 (Ship Your Projects with Docker EcoSystem)
 
Workshop - Golang language
Workshop - Golang languageWorkshop - Golang language
Workshop - Golang language
 
Docker in Action
Docker in ActionDocker in Action
Docker in Action
 
Iniciando com Docker
Iniciando com DockerIniciando com Docker
Iniciando com Docker
 
Docker 101
Docker 101Docker 101
Docker 101
 
Ratpack On the Docks
Ratpack On the DocksRatpack On the Docks
Ratpack On the Docks
 
Groovy Powered Clean Code
Groovy Powered Clean CodeGroovy Powered Clean Code
Groovy Powered Clean Code
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker - from development to production (PHPNW 2017-09-05)
Docker - from development to production (PHPNW 2017-09-05)Docker - from development to production (PHPNW 2017-09-05)
Docker - from development to production (PHPNW 2017-09-05)
 
Meetup #24 Docker for Node Developer
Meetup #24 Docker for Node DeveloperMeetup #24 Docker for Node Developer
Meetup #24 Docker for Node Developer
 
Builder and BuildKit
Builder and BuildKitBuilder and BuildKit
Builder and BuildKit
 
Deploying a Pylons app to Google App Engine
Deploying a Pylons app to Google App EngineDeploying a Pylons app to Google App Engine
Deploying a Pylons app to Google App Engine
 
Gitlab - Creating C++ applications with Gitlab CI
Gitlab - Creating C++ applications with Gitlab CIGitlab - Creating C++ applications with Gitlab CI
Gitlab - Creating C++ applications with Gitlab CI
 
Docker Ecosystem: Part III - Machine
Docker Ecosystem: Part III - MachineDocker Ecosystem: Part III - Machine
Docker Ecosystem: Part III - Machine
 

Viewers also liked

Plone + AWS at Plone Symposium tokyo 2015
Plone + AWS at Plone Symposium tokyo 2015Plone + AWS at Plone Symposium tokyo 2015
Plone + AWS at Plone Symposium tokyo 2015Manabu Terada
 
Trace Lessons Learned H4Dip Stanford 2016
Trace Lessons Learned H4Dip Stanford 2016 Trace Lessons Learned H4Dip Stanford 2016
Trace Lessons Learned H4Dip Stanford 2016 Stanford University
 
Aggregate db Lessons Learned H4Dip Stanford 2016
Aggregate db Lessons Learned H4Dip Stanford 2016Aggregate db Lessons Learned H4Dip Stanford 2016
Aggregate db Lessons Learned H4Dip Stanford 2016Stanford University
 
Peacekeeping Lessons Learned H4Dip Stanford 2016
Peacekeeping Lessons Learned H4Dip Stanford 2016Peacekeeping Lessons Learned H4Dip Stanford 2016
Peacekeeping Lessons Learned H4Dip Stanford 2016Stanford University
 
Space Evaders Lessons Learned H4Dip Stanford 2016
Space Evaders Lessons Learned H4Dip Stanford 2016Space Evaders Lessons Learned H4Dip Stanford 2016
Space Evaders Lessons Learned H4Dip Stanford 2016Stanford University
 
Exodus Lessons Learned H4Dip Stanford 2016
Exodus Lessons Learned H4Dip Stanford 2016Exodus Lessons Learned H4Dip Stanford 2016
Exodus Lessons Learned H4Dip Stanford 2016Stanford University
 
Hacking CT Lessons Learned H4Dip Stanford 2016
Hacking CT Lessons Learned H4Dip Stanford 2016Hacking CT Lessons Learned H4Dip Stanford 2016
Hacking CT Lessons Learned H4Dip Stanford 2016Stanford University
 
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016Stanford University
 

Viewers also liked (8)

Plone + AWS at Plone Symposium tokyo 2015
Plone + AWS at Plone Symposium tokyo 2015Plone + AWS at Plone Symposium tokyo 2015
Plone + AWS at Plone Symposium tokyo 2015
 
Trace Lessons Learned H4Dip Stanford 2016
Trace Lessons Learned H4Dip Stanford 2016 Trace Lessons Learned H4Dip Stanford 2016
Trace Lessons Learned H4Dip Stanford 2016
 
Aggregate db Lessons Learned H4Dip Stanford 2016
Aggregate db Lessons Learned H4Dip Stanford 2016Aggregate db Lessons Learned H4Dip Stanford 2016
Aggregate db Lessons Learned H4Dip Stanford 2016
 
Peacekeeping Lessons Learned H4Dip Stanford 2016
Peacekeeping Lessons Learned H4Dip Stanford 2016Peacekeeping Lessons Learned H4Dip Stanford 2016
Peacekeeping Lessons Learned H4Dip Stanford 2016
 
Space Evaders Lessons Learned H4Dip Stanford 2016
Space Evaders Lessons Learned H4Dip Stanford 2016Space Evaders Lessons Learned H4Dip Stanford 2016
Space Evaders Lessons Learned H4Dip Stanford 2016
 
Exodus Lessons Learned H4Dip Stanford 2016
Exodus Lessons Learned H4Dip Stanford 2016Exodus Lessons Learned H4Dip Stanford 2016
Exodus Lessons Learned H4Dip Stanford 2016
 
Hacking CT Lessons Learned H4Dip Stanford 2016
Hacking CT Lessons Learned H4Dip Stanford 2016Hacking CT Lessons Learned H4Dip Stanford 2016
Hacking CT Lessons Learned H4Dip Stanford 2016
 
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016
Fatal journeys (Team 621) Lessons Learned H4Dip Stanford 2016
 

Similar to Docker and plone

Introduction to Docker and Containers
Introduction to Docker and ContainersIntroduction to Docker and Containers
Introduction to Docker and ContainersDocker, Inc.
 
A Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersA Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersDocker, Inc.
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewireIntroduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewiredotCloud
 
Streamline your development environment with docker
Streamline your development environment with dockerStreamline your development environment with docker
Streamline your development environment with dockerGiacomo Bagnoli
 
Docker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesDocker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesJérôme Petazzoni
 
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Jérôme Petazzoni
 
Perspectives on Docker
Perspectives on DockerPerspectives on Docker
Perspectives on DockerRightScale
 
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special EditionIntroduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special EditionJérôme Petazzoni
 
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis OverviewLeo Lorieri
 
Introduction to Docker at the Azure Meet-up in New York
Introduction to Docker at the Azure Meet-up in New YorkIntroduction to Docker at the Azure Meet-up in New York
Introduction to Docker at the Azure Meet-up in New YorkJérôme Petazzoni
 
Docker for mere mortals
Docker for mere mortalsDocker for mere mortals
Docker for mere mortalsHenryk Konsek
 
Docker slides
Docker slidesDocker slides
Docker slidesAyla Khan
 
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme PetazzoniWorkshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme PetazzoniTheFamily
 
Introduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" EditionIntroduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" EditionJérôme Petazzoni
 
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)Puppet
 
Powercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxPowercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxIgnacioTamayo2
 

Similar to Docker and plone (20)

From zero to Docker
From zero to DockerFrom zero to Docker
From zero to Docker
 
Introduction to Docker and Containers
Introduction to Docker and ContainersIntroduction to Docker and Containers
Introduction to Docker and Containers
 
A Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and ContainersA Gentle Introduction to Docker and Containers
A Gentle Introduction to Docker and Containers
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewireIntroduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
 
Docker linuxday 2015
Docker linuxday 2015Docker linuxday 2015
Docker linuxday 2015
 
Streamline your development environment with docker
Streamline your development environment with dockerStreamline your development environment with docker
Streamline your development environment with docker
 
Docker n co
Docker n coDocker n co
Docker n co
 
Docker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesDocker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los Angeles
 
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
 
Perspectives on Docker
Perspectives on DockerPerspectives on Docker
Perspectives on Docker
 
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special EditionIntroduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
 
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
 
Introduction to Docker at the Azure Meet-up in New York
Introduction to Docker at the Azure Meet-up in New YorkIntroduction to Docker at the Azure Meet-up in New York
Introduction to Docker at the Azure Meet-up in New York
 
Docker for mere mortals
Docker for mere mortalsDocker for mere mortals
Docker for mere mortals
 
Docker slides
Docker slidesDocker slides
Docker slides
 
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme PetazzoniWorkshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
 
Introduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" EditionIntroduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" Edition
 
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)
Puppet Camp Chicago 2014: Docker and Puppet: 1+1=3 (Intermediate)
 
Docker Insight
Docker InsightDocker Insight
Docker Insight
 
Powercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptxPowercoders · Docker · Fall 2021.pptx
Powercoders · Docker · Fall 2021.pptx
 

More from Alin Voinea

EEA & Eau de Web Front-end add-ons - Plone conference 2023
EEA & Eau de Web Front-end add-ons - Plone conference 2023 EEA & Eau de Web Front-end add-ons - Plone conference 2023
EEA & Eau de Web Front-end add-ons - Plone conference 2023 Alin Voinea
 
EEA Faceted Navigation and Plone 6.pdf
EEA Faceted Navigation and Plone 6.pdfEEA Faceted Navigation and Plone 6.pdf
EEA Faceted Navigation and Plone 6.pdfAlin Voinea
 
EEA Volto Add-ons - Plone Conference 2020
EEA Volto Add-ons - Plone Conference 2020EEA Volto Add-ons - Plone Conference 2020
EEA Volto Add-ons - Plone Conference 2020Alin Voinea
 
Plone 6 / Volto Dexterity Content Types - Schema & Layout
Plone 6 / Volto Dexterity Content Types - Schema & LayoutPlone 6 / Volto Dexterity Content Types - Schema & Layout
Plone 6 / Volto Dexterity Content Types - Schema & LayoutAlin Voinea
 
Docker & rancher
Docker & rancherDocker & rancher
Docker & rancherAlin Voinea
 
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and Rancher
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and RancherContinuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and Rancher
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and RancherAlin Voinea
 
Faceted navigation in Plone 5
Faceted navigation in Plone 5Faceted navigation in Plone 5
Faceted navigation in Plone 5Alin Voinea
 
Plone and docker
Plone and dockerPlone and docker
Plone and dockerAlin Voinea
 
Developing Single Page Applications on Plone using AngularJS
Developing Single Page Applications on Plone using AngularJSDeveloping Single Page Applications on Plone using AngularJS
Developing Single Page Applications on Plone using AngularJSAlin Voinea
 
Responsive design in plone
Responsive design in ploneResponsive design in plone
Responsive design in ploneAlin Voinea
 
Display eea’s semantic content with elasticsearch and node.js applications sh...
Display eea’s semantic content with elasticsearch and node.js applications sh...Display eea’s semantic content with elasticsearch and node.js applications sh...
Display eea’s semantic content with elasticsearch and node.js applications sh...Alin Voinea
 
New EEA Plone Add-ons
New EEA Plone Add-onsNew EEA Plone Add-ons
New EEA Plone Add-onsAlin Voinea
 
Python eggs (RO)
Python eggs (RO)Python eggs (RO)
Python eggs (RO)Alin Voinea
 
Data visualization in plone
Data visualization in ploneData visualization in plone
Data visualization in ploneAlin Voinea
 

More from Alin Voinea (15)

EEA & Eau de Web Front-end add-ons - Plone conference 2023
EEA & Eau de Web Front-end add-ons - Plone conference 2023 EEA & Eau de Web Front-end add-ons - Plone conference 2023
EEA & Eau de Web Front-end add-ons - Plone conference 2023
 
EEA Faceted Navigation and Plone 6.pdf
EEA Faceted Navigation and Plone 6.pdfEEA Faceted Navigation and Plone 6.pdf
EEA Faceted Navigation and Plone 6.pdf
 
EEA Volto Add-ons - Plone Conference 2020
EEA Volto Add-ons - Plone Conference 2020EEA Volto Add-ons - Plone Conference 2020
EEA Volto Add-ons - Plone Conference 2020
 
Plone 6 / Volto Dexterity Content Types - Schema & Layout
Plone 6 / Volto Dexterity Content Types - Schema & LayoutPlone 6 / Volto Dexterity Content Types - Schema & Layout
Plone 6 / Volto Dexterity Content Types - Schema & Layout
 
Docker & rancher
Docker & rancherDocker & rancher
Docker & rancher
 
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and Rancher
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and RancherContinuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and Rancher
Continuous Delivery/Deployment w/ Gitflow, Docker, Jenkins and Rancher
 
Faceted navigation in Plone 5
Faceted navigation in Plone 5Faceted navigation in Plone 5
Faceted navigation in Plone 5
 
Plone and docker
Plone and dockerPlone and docker
Plone and docker
 
Kotti CMS 101
Kotti CMS 101Kotti CMS 101
Kotti CMS 101
 
Developing Single Page Applications on Plone using AngularJS
Developing Single Page Applications on Plone using AngularJSDeveloping Single Page Applications on Plone using AngularJS
Developing Single Page Applications on Plone using AngularJS
 
Responsive design in plone
Responsive design in ploneResponsive design in plone
Responsive design in plone
 
Display eea’s semantic content with elasticsearch and node.js applications sh...
Display eea’s semantic content with elasticsearch and node.js applications sh...Display eea’s semantic content with elasticsearch and node.js applications sh...
Display eea’s semantic content with elasticsearch and node.js applications sh...
 
New EEA Plone Add-ons
New EEA Plone Add-onsNew EEA Plone Add-ons
New EEA Plone Add-ons
 
Python eggs (RO)
Python eggs (RO)Python eggs (RO)
Python eggs (RO)
 
Data visualization in plone
Data visualization in ploneData visualization in plone
Data visualization in plone
 

Recently uploaded

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
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
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
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
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
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
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Recently uploaded (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
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
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
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
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
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!
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

Docker and plone