Spock
▶ Groovy integration testing with Spock and Docker
@Kiview talk at GreachConf 2017 where he talks about running Integration tests with Spock and Docker. By integration test he refers to:
A test which interacts with external system / dependencies
He introduces TestContainers
TestContainers is a Java 8 library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container
and specially TestContainers Spock; a Spock extension for using Docker containers in Spock tests.
Really cool the demo where he runs a Chrome browser inside docker container to run Geb tests.
Talk's Slides
Dockerized Java Workshop
This links gets you to the slides of @codingandrey's workshop Dockerized Java Workshop at GR8Conf EU.
The first part of the slide deck, is a great docker introduction on its own. The second part is a set of exercises to dip your toe into Docker waters. At the end a set of links to books if you have a Docker appetite.
Grails
Run Grails Application As Docker Container
@mrhaki shows us how to run a Grails Application as a Docker container. Moreover, he shows us how to:
- specify the Grails environment as a Docker environment variable, so we can re-use the same Docker image for different Grails environments.
- Pass extra command line arguments to the Grails application when we run the Docker container with our application. For example we can then specify configuration properties as docker run ... --dataSource.url=jdbc:h2:./mainDB.
- Specify an external configuration file with properties that need to be overridden, without changing the Docker image.
Configuring Grails to Use an SQL Server Database
I recently needed to connect to a SQL Server database from a Grails 3 application.
The first step was to install SQL Server on my machine.
I work in a MacOs Laptop. Fortunately, it is possible to get SQL Server running on a Mac with a Docker container.
After that, I just need to configure my datasource as explained by John Corkett and you will get your SQL Server and Grails combination ready.
▶ Dockerize your Grails!
@ilopmar structures his talk into three phases:
- Why should we use Docker while developing Grails applications? Or how to avoid the it works on my machine trap?
- A short docker intro
- A demo. Checkout the Demo Project Repository.
Tools
Running your Dockerized application(s) on AWS EC2 Container Service
Advanced Docker talk by @marcopas at GR8Conf EU.
He showed how to create a container using Spring Boot. He then discussed several container services and focused on Amazon EC2 Container Service (ECS).
Amazon EC2 Container Service (ECS) is a highly scalable, high performance container management service that supports Docker containers and allows you to easily run applications on a managed cluster of Amazon EC2 instances
He went deep explaining several topics in the context of ECS:
- Pushing and Pulling containers
- Deploying Containers
- Service Autoscaling
- Service Discovery
- Logging
- Monitoring
Comment
Game of Thrones season already started. Now, we can focus on the most important summer event for the Groovy ecosystem. GR8Conf US 🍾🍾🍾.
Docker is a platform to build and run distributed applications. And it is getting traction both in development and deployment stages in the Groovy world. Several talks at GR8Conf US reflect that reality. Continuous Deployment to Kubernetes with Spinnaker, Dockerize your Grails!, Grails and Docker.
If you are new to Docker, as I am, this issue helps you to familiarize yourself with Docker and how we can use it in the Groovy world.
Sergio del Amo