Posts tagged with docker
-
GW-Basic in Docker
Feb 22, 2020This is one of those just for fun projects, doing it to see if it can be done. Can I put
GWBASIC.EXE
inside a Docker image? -
Docker Hub automation
Dec 26, 2019I have a git repository that contains various Docker files. I hacked a script that builds and pushes the images (which is straightforward enough) but also updates the description of the images on Docker Hub.
-
Windows Docker and paths
Dec 25, 2019I use Docker Toolbox at home, as my laptop is running Windows Home and therefore cannot run Docker Desktop. Sometimes, mounting volumes can get tricky.
-
From Swagger to Confluence UML diagrams
Nov 3, 2018TL;DR: During CI, I am generating a UML diagram out of the Swagger definition and I’m publishing it to Confluence.
-
Troubleshooting SSL - missing /root/.postgresql/root.crt
Nov 2, 2018I run into a problem today trying to connect to an Azure PostgreSQL database. The database enforces SSL connections (“SSL enforce status” = “ENABLED”).
-
Dockerize the build plan v2.0
Aug 26, 2018Back in 2017, I wrote a series of articles about using Helm for Continuous Deployment. One year later, I want to look back on some things I wrote and offer some alternative solutions. The most interesting thing is about the article CD with Helm part 2: Dockerize the build plan.
-
Slim GitVersion Docker image
Aug 19, 2018In a previous post, I wrote about GitVersion. GitVersion is a tool which solves semantic versioning of a git repository in its own way. With GitVersion, the version of any git repository is a pure function of its state, derived by tags, branches and commit messages.
-
Playing with TeamCity on Azure
Mar 10, 2018I spent the past two days playing with setting up TeamCity on Azure. This is just a poc more than anything else, but it’s always fun to do something new. I had to fiddle about with some things that didn’t work as expected, so here are some notes to remember what I did.
-
Using AWS ECR as a Docker registry
Dec 30, 2017In this post, I’ll modify the pipeline from the previous posts to use a Docker registry powered by AWS ECR (Amazon Elastic Container Registry).
-
Adding code coverage with nyc
Dec 29, 2017In this post, I’ll add code coverage to the build pipeline and configure TeamCity to break the build if the code coverage drops.
-
Adding mocha unit tests
Dec 29, 2017In this post, I’ll add unit tests to the example application that I’ve been fiddling around with in the recent posts.
-
Adding WebdriverIO tests
Dec 29, 2017In this post, I’ll add some automated browser tests using PhantomJS and WebdriverIO.
-
Host DNS in Docker Toolbox
Dec 29, 2017 -
Smoke test for a Docker image
Dec 28, 2017According to Wikipedia, a smoke test is a preliminary test that reveals simple failures severe enough to (for example) reject a prospective software release. The process of smoke testing aims to determine whether the application is so badly broken as to make further immediate testing unnecessary. If we consider our dockerized blog-helm web application, a possible smoke test can be: can we pull the image from the registry? If we run the image, does the container stay alive or does it crash immediately? In this post, I’ll implement this in an extra build configuration in TeamCity with a generic bash script doing the actual work.
-
My local TeamCity setup
Dec 26, 2017In my recent blog posts I’ve played a lot with TeamCity. Often, when I want to blog about something, I end up doing some irrelevant yak shaving, which sometimes is also interesting. In this post I’ll show how I’m currently setting up TeamCity locally on my laptop.
-
Fixing root permissions on Docker volume
Dec 16, 2017In a previous post, we saw how to dockerize the build plan of an application. Typically, you’ll want the build to run tasks like linting and unit tests, and then publish the results of these operations as XML reports that the build server can consume and present in a human friendly way.
-
CD with Helm part 8: DTAP
Dec 9, 2017In the series so far, we have build a CI pipeline that produces a Docker image and a Helm chart. They are linked together with a unique version, allowing us to use Helm to deploy any feature branch we want. Now we’ll see how to implement a traditional DTAP and use Helm to deploy whatever, wherever.
-
CD with Helm part 7: Docker registry
Dec 9, 2017In a previous post, we had taken a shortcut: we had TeamCity running inside Kubernetes, sharing its Docker daemon. That trick allowed Kubernetes to access the Docker images produced by our builds. In this post, we’ll setup our own Docker registry and publish Docker images there.
-
CD with Helm part 6: networking interlude
Dec 3, 2017Before we continue with setting up the multiple environments that comprise our DTAP, I’d like to take a break and discuss a bit about networks. This way we can understand better what is going on inside and outside of Kubernetes.
-
CD with Helm part 5: versioned artifacts
Dec 2, 2017In the previous post we created the Helm chart for our hello world
blog-helm
application. The Helm chart contains all the information we need to deploy our application to a Kubernetes cluster. But so far, we always deploy the latest version. In a CD setup, we’d like to be able to deploy any version, from any feature branch, at any given point in time, to any environment (DTAP). Let’s start by looking at versioning. -
CD with Helm part 4: Helm Intro
Nov 27, 2017In the previous post we had a first look at Kubernetes and deployed our hello world app on a local cluster using the CLI. The simple commands we used are good enough for a first taste. However, the full power of Kubernetes comes with using configuration files. Helm builds on top of that, taking these configuration files to the next level.
-
CD with Helm part 3: Kubernetes Intro
Nov 25, 2017In the previous posts we took the first steps to dockerize our hello world application. This allows us to run the application on any host, as long as it runs Docker. We also dockerized the build plan, which allows us to use any build server, as long as it runs Docker. Now we’re ready to run the application on production. Where should we run it?
-
CD with Helm part 2: Dockerize the build plan
Nov 18, 2017With Docker, we can package our application in a Docker image and we have the assurance that it will run on any machine that has Docker. We can do the same with our build plan. Dockerizing the build environment means that the only dependency we have on the build server is that it supports Docker. This reduces the amount of work needed to manage the build server and enables teams to be more independent.
-
CD with Helm part 1: Dockerize it
Nov 15, 2017In the previous post, we created the hello world application that we’ll be using. Now it’s time to dockerize the app. Dockerizing means to create a Docker image that can be used to run the app.
-
CD with Helm part 0: hello world app
Nov 13, 2017I’d like to start a tutorial series on how to apply CI/CD principles with tools like Kubernetes and Helm. I’m extremely new in these technologies, so this is a learning exercise for me.
-
Mocking AWS with localstack
Jun 6, 2017We use AWS at work and I’ve been learning more and more about it. AWS offers so many services it’s even difficult to remember all of them. It’s quite impressive how many things a developer could build upon in order to deliver a scalable solution. The phrase “standing on the shoulders of giants” is quite fitting.
-
Docker hacking session
Jun 4, 2017Last week I organized a hacking session for my team at work. We ordered pizzas and we stayed a couple of hours extra to have a look at Docker. For some people this was completely new, for some others not as much. The feedback however was positive overall.
-
How to deploy a smashing dashboard to AWS Elastic Beanstalk with Docker
May 9, 2017So, in the previous post we created a fancy dashboard using the smashing framework. Let’s see how we can deploy our dashboard to AWS Elastic Beanstalk using Docker.
-
Debugging Docker with IntelliJ IDEA
Mar 26, 2017In this post we’ll create a small Java application, run it inside a Docker container, and use IntelliJ IDEA to debug. This is a rather large post, so take your time.
-
Kafka with Docker: A Docker introduction
Mar 25, 2017Using Kafka on your local development machine adds another level of complexity. You need to manage two extra services, Apache ZooKeeper and Apache Kafka. In a previous post, I mentioned the possibility of creating a Windows service wrapper for Kafka, so that managing is a bit easier. In this post, we’ll have a look at Docker and how we can use it to solve the same problem in a different way. I am new to Docker, so this is a very basic post, more like an introduction to Docker.