In the last post, we have already seen that we can classify entire data structure into linear and non-linear data structure. Today I will be implementing them in Python. So brace yourself.
We have previously seen how you can spin up your own VPN. Among many benefits, one of the benefit is the geographical anonimity. Today we are going to discuss and setup yet another benefit. We are going to tweak our VPN server setup a little bit to enable ad-blocker out of the box. Meaning that you won't have to install ad-blocker on your browser. It will be enabled connection wide.
Unlike FastAPI, Gin does not have OpenAPI integration built in. With FastAPI when you add a route, documentation is already generated. With Gin, this is not the case. But recently I integrated Swagger UI in one of my Go backends and I wanted to document that process.
In last post we learned to install and configure Portainer to maintain your local Docker environment. In this post I'm going to extend on last post and show how can you manage your VPS docker environment from your local Portainer installation.
This is a quick post where I demonstrate how to install Portainer on Ubuntu. And then use the same instance to Portainer to manage/administer Docker instance on your VPS. Regardless this tutorial is demonstrated on Ubuntu, you can run Portainer on whatever Docker host you are using including Windows.
Internet has evolved in last 2 decades a lot. HTTP/1.1 was not enough so we have HTTP2 now. The specification we used to transfer data between client and the server has also evolved. From XML, to JSON, and now we have Protocol Buffer, which is a binary spec. Let's dive deeper.
We have been using FastAPI along with the Test-Driven Development process to come up with an authentication system. Till now we can register to own a tiny application using a username and password. We are also able to generate a JWT token to be classified as a logged-in user. But there is no point in logging in until the logged-in user can do something privileged. In this iteration of the series, we'd see how to access a protected endpoint using FastAPI and JWT.
In the last couple of posts in TDD Auth with FastAPI series, we've been sustainably moved towards a web service that can let users register with the service. Now what? We have already done the easy part. The next part is to look at the authorization. This involves letting the user log in. And only give access to what they are authorized for. Let us look at the login part first.
Go community believes that we need no framework to develop web services. And I totally agree with that. When you work without using any framework, you actually learn the ins and outs of development. But once you learn how things work, you must reside in a community and don't reinvent the wheel.
I recently got asked to me what did __init__ dunder method did in Python. And I was like, "it is used to initlize variables inside a class". And just after that the followup question was, "then what is __new__ used for. And I was completely blank.
We have previously seen how to set up a GitHub to Jenkins pipeline with webhooks, this time we are going to continue on that lesson and learn how to configure Jenkins to build and push Docker images to DockerHub. Weβll also see how to create images for both arm64 as well as amd64 architectures machines. Keep on reading.
In a typical CI/CD pipeline, what happens is when you push your code to a code repository (remote) like GitHub/GitLab/BitBucket, an event is triggered by the git host provider. This trigger is known as WebHook. This webhook can be used by some third-party service to provide an array of integrations. Do you want to tweet on every git push? You can do that.
In this post we are going to provision HTTPS certificate from Let's Encrypt and use that in our SSL termination program nginx. We are going to use Ansible for this automation.