Merge branch 'MichaelCade:main' into zh_cn
This commit is contained in:
commit
0130fb262d
@ -19,7 +19,7 @@ From a DevOps perspective or any operations role perspective, you are going to c
|
||||
I have been using Linux daily for several years but my go to desktop machine has always been either macOS or Windows. However, when I moved into the Cloud Native role I am in now I took the plunge to make sure that my laptop was fully Linux based and my daily driver, whilst I still needed Windows for work-based applications and a lot of my audio and video gear does not run on Linux I was forcing myself to run a Linux desktop full time to get a better grasp of a lot of the things we are going to touch on over the next 7 days.
|
||||
|
||||
## Getting Started
|
||||
I am not suggesting you do the same as me by any stretch as there are easier options and less destructive but I will say taking that full-time step forces you to learn faster how to make things work on Linux.
|
||||
I am not suggesting you do the same as me by any stretch as there are easier options which are less destructive but I will say that taking that full-time step forces you to learn faster how to make things work on Linux.
|
||||
|
||||
For the majority of these 7 days, I am going to deploy a Virtual Machine in Virtual Box on my Windows machine. I am also going to deploy a desktop version of a Linux distribution, whereas a lot of the Linux servers you will be administering will likely be servers that come with no GUI and everything is shell-based. However, as I said at the start a lot of the tools that we covered throughout this whole 90 days started on Linux I would also strongly encourage you to dive into running that Linux Desktop for that learning experience as well.
|
||||
|
||||
@ -33,22 +33,22 @@ Another good reason to use most Linux distributions is that they are free and op
|
||||
## Introducing HashiCorp Vagrant
|
||||
|
||||
|
||||
Vagrant is a CLI utility that manages the lifecycle of your virtual machines. We can use vagrant to spin up and down virtual machines across many different platforms including vSphere, Hyper-v, Virtual Box and also Docker. It does have other providers but we will stick with that we are using Virtual Box here so we are good to go.
|
||||
Vagrant is a CLI utility that manages the lifecycle of your virtual machines. We can use vagrant to spin up and down virtual machines across many different platforms including vSphere, Hyper-v, Virtual Box and also Docker. It does have other providers but we will stick with Virtual Box here so we are good to go.
|
||||
|
||||
|
||||
The first thing we need to do is get Vagrant installed on our machine, when you go to the downloads page you will see all the operating systems listed for your choice. [HashiCorp Vagrant](https://www.vagrantup.com/downloads) I am using Windows so I grabbed the binary for my system and went ahead and installed this to my system.
|
||||
The first thing we need to do is get Vagrant installed on our machine, when you go to the downloads page you will see all the operating systems listed for your choice. [HashiCorp Vagrant](https://www.vagrantup.com/downloads) I am using Windows so I grabbed the binary for my system and went ahead and installed this on my system.
|
||||
|
||||
|
||||
Next up we also need to get [Virtual Box](https://www.virtualbox.org/wiki/Downloads) installed. Again this can also be installed on many different operating systems a good reason to choose this and vagrant is that if you are running Windows, macOS, or Linux then we have you covered here.
|
||||
Next up we also need to get [Virtual Box](https://www.virtualbox.org/wiki/Downloads) installed. Again, this can also be installed on many different operating systems and a good reason to choose this and vagrant is that if you are running Windows, macOS, or Linux then we have you covered here.
|
||||
|
||||
|
||||
Both installations are pretty straightforward. If you have issues both have great communities around them also feel free to reach out and I can try to assist also.
|
||||
Both installations are pretty straightforward and both have great communitites around them so feel free to reach out if you have issues and I can try and assist too.
|
||||
|
||||
|
||||
## Our first VAGRANTFILE
|
||||
|
||||
|
||||
The VAGRANTFILE describes the type of machine we want to deploy. It also defines how we want the configuration and provisioning of this machine need to look.
|
||||
The VAGRANTFILE describes the type of machine we want to deploy. It also defines the configuration and provisioning for this machine.
|
||||
|
||||
|
||||
When it comes to saving these and organizing your VAGRANTFILEs I tend to put them in their folders in my workspace. You can see below how this looks on my system. Hopefully following this you will play around with Vagrant and see the ease of spinning up different systems, it is also great for that rabbit hole known as distro hopping for Linux Desktops.
|
||||
@ -57,7 +57,7 @@ When it comes to saving these and organizing your VAGRANTFILEs I tend to put the
|
||||

|
||||
|
||||
|
||||
Let's take a look at that VAGRANTFILE then and see what we are building.
|
||||
Let's take a look at that VAGRANTFILE and see what we are building.
|
||||
|
||||
|
||||
```
|
||||
@ -80,10 +80,10 @@ end
|
||||
|
||||
```
|
||||
|
||||
This is a very simple VAGRANTFILE overall we are saying we want a specific "box" a box being possibly either a public image or private build of the system you are looking for. You can find a long list of "boxes" publicly available here in the [public catalogue of Vagrant boxes](https://app.vagrantup.com/boxes/search)
|
||||
This is a very simple VAGRANTFILE overall. We are saying that we want a specific "box", a box being possibly either a public image or private build of the system you are looking for. You can find a long list of "boxes" publicly available here in the [public catalogue of Vagrant boxes](https://app.vagrantup.com/boxes/search)
|
||||
|
||||
|
||||
Next line we are saying we want to use a specific provider in this case it is `VirtualBox` and then we want to define our machine's memory to `8GB and our number of CPUs to `4`. My experience also tells me that you may want to also add the following line if you experience display issues. This will set the video memory to what you want, I would ramp this right up to `128MB but depends on your system.
|
||||
Next line we're saying that we want to use a specific provider and in this case it's `VirtualBox`. We also define our machine's memory to `8GB` and the number of CPUs to `4`. My experience tells me that you may want to also add the following line if you experience display issues. This will set the video memory to what you want, I would ramp this right up to `128MB` but it depends on your system.
|
||||
|
||||
|
||||
```
|
||||
@ -98,13 +98,13 @@ I have also placed a copy of this specific vagrant file in the [Linux Folder](Li
|
||||
## Provisioning our Linux Desktop
|
||||
|
||||
|
||||
We are now ready to get our first machine up and running, in your workstations terminal. In my case I am using PowerShell on my Windows machine, navigate to your projects folder and where you will find your VAGRANTFILE. Once there you can type the command `vagrant up` and if everything is correct then you will see something like the below.
|
||||
We are now ready to get our first machine up and running, in our workstation's terminal. In my case I am using PowerShell on my Windows machine. Navigate to your projects folder and where you will find your VAGRANTFILE. Once there you can type the command `vagrant up` and if everything's allright you will see something like this.
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
Another thing to add here is that the network will be set to `NAT` on your virtual machine, at this stage we don't need to know about NAT and I plan to have a whole session talking about it in the next section about Networking. But know that it is the easy button when it comes to getting a machine on your home network, it is also the default networking mode on Virtual Box. You can find out more in the [Virtual Box documentation](https://www.virtualbox.org/manual/ch06.html#network_nat)
|
||||
Another thing to add here is that the network will be set to `NAT` on your virtual machine. At this stage we don't need to know about NAT and I plan to have a whole session talking about it in the Networking session. Know that it is the easy button when it comes to getting a machine on your home network, it is also the default networking mode on Virtual Box. You can find out more in the [Virtual Box documentation](https://www.virtualbox.org/manual/ch06.html#network_nat)
|
||||
|
||||
|
||||
Once `vagrant up` is complete we can now use `vagrant ssh` to jump straight into the terminal of our new VM.
|
||||
|
@ -9,11 +9,11 @@ id: 1049037
|
||||
---
|
||||
## The OSI Model - The 7 Layers
|
||||
|
||||
The overall purpose of networking as an industry is to allow two hosts to share data before networking if I want to get data from this host to this host I'd have to plug something into this host walk it over to the other host and plug it into the other host.
|
||||
The overall purpose of networking as an industry is to allow two hosts to share data. Before networking if I want to get data from this host to this host I'd have to plug something into this host walk it over to the other host and plug it into the other host.
|
||||
|
||||
Networking allows us to automate this by allowing the host to share data automatically across the wire for these hosts to do this they must follow a set of rules.
|
||||
|
||||
This is no different than any language English has a set of rules that two English speakers must follow Spanish has its own set of rules French has its own set of rules while networking also has its own set of rules
|
||||
This is no different than any language. English has a set of rules that two English speakers must follow. Spanish has its own set of rules. French has its own set of rules, while networking also has its own set of rules
|
||||
|
||||
The rules for networking are divided into seven different layers and those layers are known as the OSI model.
|
||||
|
||||
@ -55,7 +55,7 @@ MAC Addresses - Layer 2 = Hop to Hop Delivery
|
||||
Now there is a network protocol that we will get into but not today called ARP(Address Resolution Protocol) which links our Layer3 and Layer2 addresses.
|
||||
|
||||
### Transport
|
||||
Service to Service delivery, Layer 4 is there to distinguish data streams. In the same way that Layer 3 and Layer 2 both had their addressing schemes in Layer 4, we have ports.
|
||||
Service to Service delivery, Layer 4 is there to distinguish data streams. In the same way that Layer 3 and Layer 2 both had their addressing schemes, in Layer 4 we have ports.
|
||||
|
||||

|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
title: '#90DaysOfDevOps - Docker Images & Hands-On with Docker Desktop - Day 44'
|
||||
published: false
|
||||
description: 90DaysOfDevOps - Docker Images & Hands-On with Docker Desktop
|
||||
tags: "devops, 90daysofdevops, learning"
|
||||
tags: 'devops, 90daysofdevops, learning'
|
||||
cover_image: null
|
||||
canonical_url: null
|
||||
id: 1048708
|
||||
@ -19,7 +19,7 @@ Now is a good time to go and create your account on [DockerHub](https://hub.dock
|
||||
|
||||
DockerHub is a centralised resource for working with Docker and its components. Most commonly known as a registry to host docker images. But there is a lot of additional services here which can be used in part with automation or integrated into GitHub as well as security scanning.
|
||||
|
||||
If you scroll down once logged in you are going to see a list of container images, You might see database images for mySQL, hello-world etc etc. Think of these as great baseline images or you might in fact just need a database image and you are best to use the official one which means you don't need to create your own.
|
||||
If you scroll down once logged in you are going to see a list of container images, You might see database images for mySQL, hello-world etc. Think of these as great baseline images or you might in fact just need a database image and you are best to use the official one which means you don't need to create your own.
|
||||
|
||||

|
||||
|
||||
|
@ -25,7 +25,7 @@ We should organise our layers that change most often as high in the stack as pos
|
||||
|
||||
Each time docker launches a container from an image (like we ran yesterday) it adds a writeable layer, known as the container layer. This stores all changes to the container throughout its runtime. This layer is the only difference between a live operational container and the source image itself. Any number of like for like containers can share access to the same underlying image while maintaining their own individual state.
|
||||
|
||||
Back to the example we used yesterday with the Ubuntu image. We could run that same command multiple times and on the first container we could go and install pinta and on the second we could install figlet two different applications, different purpose, different size etc etc. Each container that we deployed share the same image but not the same state and then that state is then gone when we remove the container.
|
||||
Back to the example we used yesterday with the Ubuntu image. We could run that same command multiple times and on the first container we could go and install pinta and on the second we could install figlet two different applications, different purpose, different size etc. Each container that we deployed share the same image but not the same state and then that state is then gone when we remove the container.
|
||||
|
||||

|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user