TIL: Docker Debugging and Exit Codes

Read more →

TIL: strongSwan using bypass-lan Plugin Can Fix Docker Routing

Let Docker access the internet by passing through the VPN connection My host machine, a laptop running Manjaro Linux, is connected via VPN to the internet. I use strongSwan, the open-source IPsec-based VPN solution. IPsec with the IKEv2 protocol is fast and secure. Now, Docker doesn't work. Networking issues are a common problem with VPN and Docker. You can piggyback your Docker container on the host network. That technique only works on Linux machines.
Read more →

Friday Picks 037

Read more →

TIL: Docker: chown Copies All Files

Docker builds containers via layers. All commands add another layer to the already existing image. What does that mean for changing file permissions via chown or chmod? Let's say we build this image: FROMfrolvlad/alpine-miniconda3:python3.7 AS build# set working directoryWORKDIR/usr/src/app# copy codeCOPY ./code /codeCOPY ./notebooks /notebooks# add non-root userRUN addgroup –system user && \ adduser –system -G user user && \ chown -R user:user /usr/src/appAfter copying the code from the host machine to the container, we switch permissions for the working directory from root to user.
Read more →

AWS ECS - I'm Giving Up

The last fews day's I've been learning how to deploy a Flask and React application to AWS. I've decided to shelf that project for now. As a hobby developer and learner I don't need all the features that AWS offers. A setup with Load Balancer, RDS instances, etc. adds a lot of complexity which I have no use for. The plan for this month was to create a test-driven Python and React application.
Read more →

Learning Progress: Still Learning About Amazon ECR

Read more →

Learning Progress TIL: About Container Orchestration

Read more →

Run Docker nginx as Non-Root-User

How to run nginx as non-privileged user with Docker nginx is an open-source solution for web serving and reverse proxying your web application. You put it “in front” of your different services, and nginx can route the traffic to the correct url. That's useful for micro-services, for example. Per default, nginx runs as root user. Why? Only root processes can listen to ports below 1024. The default port for web applications is usually 80 or 443.
Read more →

TIL: Bind Mounts

Read more →

Learning About Nodejs Graphql Microservices

I'm currently working on a few micro-services with Docker. The architecture looks promising to me, and I like to play with Docker containers. Lately I've been watching a few videos about Node.js/GraphQL Microservices by Better Coding Academy. The tutorial series assumes a lot of knowledge (JavaScript, Express, GraphQL, Docker). I would have liked more detailed explanations. But the videos are still useful for showing the architecture of an Express/GraphQL setup with micro-services.
Read more →