Skip to content

Commit 97a43bb

Browse files
committed
πŸ¦„ Upload docs
1 parent 83ec071 commit 97a43bb

12 files changed

Lines changed: 88 additions & 45 deletions

File tree

docs/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css renamed to docs/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

β€Ždocs/docs/building-a-dockerized-restful-api-application-in-go/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Building a Dockerized RESTful API application in Go Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/building-a-dockerized-restful-api-application-in-go/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -239,7 +239,7 @@ <h2 id="-the-codebase">πŸ“¦ The codebase</h2>
239239

240240

241241

242-
<time datetime="2023-10-30"><i>πŸ•’</i> Updated: 2023-10-30</time>
242+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
243243

244244
<a href="/docs/overview/"><i>οΉ€</i> Previous</a>
245245

β€Ždocs/docs/configurations/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Configurations Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/configurations/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -435,7 +435,7 @@ <h2 id="running-migrations-on-the-application-startup">Running migrations on the
435435

436436

437437

438-
<time datetime="2023-09-14"><i>πŸ•’</i> Updated: 2023-09-14</time>
438+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
439439

440440
<a href="/docs/database-and-migrations/"><i>οΉ€</i> Previous</a>
441441

β€Ždocs/docs/database-and-migrations/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Database and migrations Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/database-and-migrations/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -556,7 +556,7 @@ <h2 id="-final-project-structure">πŸ“ Final project structure</h2>
556556

557557

558558

559-
<time datetime="2023-01-20"><i>πŸ•’</i> Updated: 2023-01-20</time>
559+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
560560

561561
<a href="/docs/hello-world-server/"><i>οΉ€</i> Previous</a>
562562

β€Ždocs/docs/error-handling/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Error handling Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/error-handling/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -726,7 +726,7 @@ <h3 id="1-add-utilvalidatorresponsego">1. Add <code>util/validator/response.go</
726726

727727

728728

729-
<time datetime="2023-11-18"><i>πŸ•’</i> Updated: 2023-11-18</time>
729+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
730730

731731
<a href="/docs/repository/"><i>οΉ€</i> Previous</a>
732732

β€Ždocs/docs/hello-world-server/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Hello World server Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/hello-world-server/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -415,7 +415,7 @@ <h2 id="-final-project-structure">πŸ“ Final project structure</h2>
415415

416416

417417

418-
<time datetime="2023-01-20"><i>πŸ•’</i> Updated: 2023-01-20</time>
418+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
419419

420420
<a href="/docs/building-a-dockerized-restful-api-application-in-go/"><i>οΉ€</i> Previous</a>
421421

β€Ždocs/docs/index.xmlβ€Ž

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,8 @@ Go comes with the net/http package, which provides HTTP client and server implem
5353
<link>https://learning-cloud-native-go.github.io/docs/overview/</link>
5454
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
5555
<guid>https://learning-cloud-native-go.github.io/docs/overview/</guid>
56-
<description>Cloud Native Application Development is a one way of speeding up building web applications, using micro-services, containers and orchestration tools. First, let’s see what is a cloud and what cloud native means.
57-
What is Cloud Native? There are many definitions for cloud and cloud native architecture. First let’s check the definitions given by RedHat via their Understanding cloud computing and Understanding cloud-native applications articles.
58-
πŸ“– Clouds are pools of virtual resources (such as raw processing power, storage, or cloud-based applications) orchestrated by management and automation software so they can be accessed by users on-demand through self-service portals supported by automatic scaling and dynamic resource allocation.</description>
56+
<description>About me πŸ§‘β€πŸ’» I am an expat working in Singapore as a Go Backend and DevOps Engineer. Feel free to reach out if you find any mistakes or anything that needs to be changed, including spelling or grammar errors. Alternatively, you can create a pull request, open an issue, or share your awesome ideas in this gist. Good luck with learning cloud native Go!
57+
Cloud Native Applications ☁️ Clouds are virtual resource pools (storage, raw processing power, or cloud-based applications) that users can access on-demand.</description>
5958
</item>
6059
<item>
6160
<title>Repository</title>

β€Ždocs/docs/overview/index.htmlβ€Ž

Lines changed: 59 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Overview Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/overview/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -144,18 +144,61 @@ <h1>Overview</h1>
144144
<p></p>
145145
</header>
146146
<div id="article-body">
147-
<p>Cloud Native Application Development is a one way of speeding up building web applications, using micro-services, containers and orchestration tools. First, let’s see what is a cloud and what cloud native means.</p>
148-
<h2 id="what-is-cloud-native">What is Cloud Native?</h2>
149-
<p>There are many definitions for cloud and cloud native architecture. First let’s check the definitions given by <a href="https://www.redhat.com/">RedHat</a> via their <a href="https://www.redhat.com/en/topics/cloud">Understanding cloud computing</a> and <a href="https://www.redhat.com/en/topics/cloud-native-apps">Understanding cloud-native applications</a> articles.</p>
150-
<p><a href="https://www.redhat.com/en/topics/cloud">πŸ“–</a> Clouds are <strong>pools of virtual resources</strong> (such as raw processing power, storage, or cloud-based applications) orchestrated by management and automation software so they can be accessed by users on-demand through self-service portals supported by automatic scaling and dynamic resource allocation.</p>
151-
<p><a href="https://www.redhat.com/en/topics/cloud-native-apps">πŸ“–</a> Cloud native applications are a <strong>collection of small, independent and loosely coupled services</strong> which are specifically designed to provide <strong>a fast and consistent development and automated management experience</strong> across private, public, and hybrid clouds.</p>
152-
<p>I think, now you are quite clear about cloud and cloud native applications. The definition provided by <a href="https://www.cncf.io/">Cloud Native Computing Foundation</a>, explains that how Cloud native applications achieve a fast and consistent development.</p>
153-
<p><a href="https://www.cncf.io/">πŸ“–</a> Cloud native computing uses an open source software stack to deploy applications as <strong>microservices</strong>, packaging each part into its own <strong>container</strong>, and dynamically <strong>orchestrating</strong> those containers <strong>to optimize resource utilization</strong>. Cloud native technologies enable software developers to build great products faster.</p>
147+
<h2 id="about-me">About me</h2>
154148
<blockquote>
155-
<p>πŸ’― Explaining the concepts behind cloud native architecture is beyond the purpose of this. So, for more details, I would like to highly recommend you to read the first chapter of <a href="https://www.amazon.com/Cloud-Native-DevOps-Kubernetes-Applications/dp/1492040762">Cloud Native DevOps with Kubernetes</a> which is written by <a href="https://twitter.com/bitfield">John Arundel</a> and <a href="https://twitter.com/JustinDomingus">Justin Domingus</a>. You can get this as a free e-book via <a href="https://www.nginx.com/resources/library/cloud-native-devops-with-kubernetes/">NGINX resources</a>.</p>
149+
<p>πŸ§‘β€πŸ’» I am an expat working in Singapore as a Go Backend and DevOps Engineer. Feel free to reach out if you find any mistakes or anything that needs to be changed, including spelling or grammar errors. Alternatively, you can create a pull request, open an issue, or <a href="https://gist.github.com/dumindu/153b6cf8a346d3a1aad51e17291d4dda">share your awesome ideas in this gist</a>. Good luck with learning cloud native Go!</p>
156150
</blockquote>
157-
<h2 id="the-first-step">The First Step</h2>
158-
<p>This is the very beginning of this project. So, as the first step, we are going to discuss about <strong>&ldquo;How to build a Dockerized RESTful API application using Go&rdquo;</strong>. In the future discussions, we will discuss about <a href="https://kubernetes.io/">Kubernetes</a> and how to deploy our application in a cloud environment.</p>
151+
<p><a href="https://github.com/learning-cloud-native-go/myapp"><img src="https://img.shields.io/github/stars/learning-cloud-native-go/myapp?style=for-the-badge&amp;logo=go&amp;logoColor=333333&amp;label=learning-cloud-native-go/myapp&amp;labelColor=f9f9f9&amp;color=00ADD8" alt="learning-cloud-native-go/myapp"></a>
152+
<a href="https://github.com/learning-cloud-native-go/learning-cloud-native-go.github.io"><img src="https://img.shields.io/github/stars/learning-cloud-native-go/learning-cloud-native-go.github.io?style=for-the-badge&amp;logo=go&amp;logoColor=333333&amp;label=learning-cloud-native-go.github.io&amp;labelColor=f9f9f9&amp;color=00ADD8" alt="learning-cloud-native-go.github.io"></a>
153+
<a href="https://learning-rust.github.io"><img src="https://img.shields.io/github/stars/learning-rust/learning-rust.github.io?style=for-the-badge&amp;logo=rust&amp;label=learning-rust.github.io&amp;logoColor=333333&amp;labelColor=f9f9f9&amp;color=F46623" alt="learning-rust.github.io"></a></p>
154+
<p><a href="https://github.com/dumindu"><img src="https://img.shields.io/badge/dumindu-866ee7?style=for-the-badge&amp;logo=GitHub&amp;logoColor=333333&amp;labelColor=f9f9f9" alt="github.com"></a>
155+
<a href="https://www.buymeacoffee.com/dumindu"><img src="https://img.shields.io/badge/Buy%20me%20a%20coffee-dumindu-FFDD00?style=for-the-badge&amp;logo=buymeacoffee&amp;logoColor=333333&amp;labelColor=f9f9f9" alt="buymeacoffee"></a></p>
156+
<h2 id="cloud-native-applications">Cloud Native Applications</h2>
157+
<blockquote>
158+
<p>☁️ Clouds are <strong>virtual resource pools</strong> (storage, raw processing power, or cloud-based applications) that <strong>users can access on-demand</strong>. Cloud native is all about designing apps for cloud use. A cloud native application is a <strong>collection of small, loosely coupled, independent services</strong> (microservices), specifically <strong>designed to deploy in its own container</strong> across private, public, and hybrid clouds.</p>
159+
</blockquote>
160+
<p>Cloud computing is a method of delivering technology resources, such as storage, servers, databases, networking, software, and intelligence over the internet (β€œthe cloud”). Instead of owning, maintaining, and upgrading their physical data centers and servers, organizations can access these services on an as-needed basis and pay just for what they use.</p>
161+
<p>Cloud native application development is a method of building apps specifically tailored for cloud computing environments. Instead of being designed to run on a single, in-house server, cloud native applications are designed to live on the cloud, taking advantage of the different cloud technologies. They are built using services and technologies that are fully managed and dynamically scalable through API calls. They enable developers to deliver faster and predictably, regardless of the scale, offering flexibility, robustness, rapid development and separate concerns.</p>
162+
<p>Cloud native applications often leverage container technologies like Docker, and orchestration tools like Kubernetes, to manage and scale individual service components. A common architectural style for cloud native applications is the Microservices architecture, where the application is divided into a collection of loosely coupled services.</p>
163+
<p>In conclusion, cloud computing and cloud native app development offer businesses more speed, flexibility, and scalability, which leads to cost efficiency, increased productivity, and technology reliability. They also foster innovation and faster time-to-market due to their flexibility and scalability.</p>
164+
<h2 id="cloud-native-development-approach">Cloud Native Development Approach</h2>
165+
<p>Cloud native development approach brings numerous benefits, but it also requires careful considerations in the following areas:</p>
166+
<ol>
167+
<li>
168+
<p><strong>Architecture</strong>: In cloud native development, applications are often designed using microservices architecture. This involves developing an application as a suite of small services, each running its own process and communicating via lightweight mechanisms such as HTTP/REST with JSON or Protobuf.</p>
169+
</li>
170+
<li>
171+
<p><strong>DevOps</strong>: A robust DevOps culture is a fundamental part of cloud native app development. This includes continuous integration, delivery, and deployment, as well as monitoring and logging of the applications.</p>
172+
</li>
173+
<li>
174+
<p><strong>Infrastructure as Code (IaC)</strong>: In a cloud native approach, infrastructure is often defined and managed using machine-readable definition files rather than physical hardware configuration. This practice, known as Infrastructure as Code, can increase efficiency and reduce the chance of human error.</p>
175+
</li>
176+
<li>
177+
<p><strong>Containers &amp; Orchestration</strong>: Containers are a key component of the cloud native approach, and they need to be effectively managed and orchestrated. Kubernetes has become the de facto standard for container orchestration.</p>
178+
</li>
179+
<li>
180+
<p><strong>Resilience</strong>: Cloud native applications need to be designed to handle failures gracefully. This could mean implementing practices like circuit breaking, load balancing, and retry logic.</p>
181+
</li>
182+
<li>
183+
<p><strong>Scalability</strong>: One of the key benefits of cloud native applications is their ability to scale according to demand. It is important to consider how the application will handle increased traffic.</p>
184+
</li>
185+
<li>
186+
<p><strong>Security</strong>: While a move to the cloud can enhance security, it can also introduce new complexities. Security needs to be considered at all stages of the application lifecycle, from development to deployment.</p>
187+
</li>
188+
<li>
189+
<p><strong>Automated Testing</strong>: Due to the distributed nature of cloud native apps, testing can become complex. Automated testing strategies, including unit, integration, and end-to-end tests, are crucial.</p>
190+
</li>
191+
<li>
192+
<p><strong>Monitoring &amp; Observability</strong>: Understanding the state of your application is crucial. Incorporating monitoring, logging, and tracing capabilities into your application helps provide rich, actionable insights.</p>
193+
</li>
194+
<li>
195+
<p><strong>Vendor Lock-in</strong>: While using managed services can speed up development, it can also lead to vendor lock-in. Be aware of the trade-offs and consider multi-cloud strategies or the use of cloud-agnostic technologies.</p>
196+
</li>
197+
</ol>
198+
<p>By taking these areas into account, you will be better prepared to leverage the advantages of the cloud native development approach while avoiding potential pitfalls.</p>
199+
<h2 id="about-this-series">About this series</h2>
200+
<p>This tutorial series is all about learning Cloud Native Application Development with Go. We&rsquo;ll build web apps fit for the cloud.</p>
201+
<p>As the first step, we are going to discuss &ldquo;How to build a Dockerized RESTful API application using Go&rdquo;. In the future discussions, we will discuss about <a href="https://kubernetes.io/">Kubernetes</a> and how to deploy and monitor our application in cloud environments.</p>
159202

160203
</div>
161204

@@ -186,7 +229,7 @@ <h2 id="the-first-step">The First Step</h2>
186229

187230

188231

189-
<time datetime="2023-06-25"><i>πŸ•’</i> Updated: 2023-06-25</time>
232+
<time datetime="2024-03-17"><i>πŸ•’</i> Updated: 2024-03-17</time>
190233

191234
<a class="hidden"><i>οΉ€</i> Previous</a>
192235

@@ -205,8 +248,10 @@ <h2 id="the-first-step">The First Step</h2>
205248
<strong>On this page</strong>
206249
<nav id="TableOfContents">
207250
<ul>
208-
<li><a href="#what-is-cloud-native">What is Cloud Native?</a></li>
209-
<li><a href="#the-first-step">The First Step</a></li>
251+
<li><a href="#about-me">About me</a></li>
252+
<li><a href="#cloud-native-applications">Cloud Native Applications</a></li>
253+
<li><a href="#cloud-native-development-approach">Cloud Native Development Approach</a></li>
254+
<li><a href="#about-this-series">About this series</a></li>
210255
</ul>
211256
</nav>
212257
</aside>

β€Ždocs/docs/repository/index.htmlβ€Ž

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<title>Repository Β· Learning Cloud Native Go</title>
1414
<link rel="canonical" href="https://learning-cloud-native-go.github.io/docs/repository/">
15-
<link rel="stylesheet" href="/assets/css/docs.min.67fc7b3b41d707b198af1dd244ec62e1a1dd4665e40cb6f1d97e9257e597ff1d.css" integrity="">
15+
<link rel="stylesheet" href="/assets/css/docs.min.a6d52fd5461b892ef08a611a76391f8b999c6aca8f2a2317d6827c1143c0ca03.css" integrity="">
1616

1717
<link rel="manifest" href="/manifest.json">
1818
<link rel="icon" href="/favicon/favicon.ico">
@@ -786,7 +786,7 @@ <h2 id="-final-project-structure">πŸ“ Final project structure</h2>
786786

787787

788788

789-
<time datetime="2023-10-22"><i>πŸ•’</i> Updated: 2023-10-22</time>
789+
<time datetime="2024-01-21"><i>πŸ•’</i> Updated: 2024-01-21</time>
790790

791791
<a href="/docs/routes-and-openapi-specification/"><i>οΉ€</i> Previous</a>
792792

0 commit comments

Comments
Β (0)