たねやつの木

Photographs, Keyboards and Programming

コンテナ技術

【CI/CD勉強編-1】なぜCI/CD?開発環境(WSL)でFastAPIアプリをDockerで動かす

第1回は、その第一歩として、なぜCI/CDが必要なのかに触れつつ、開発環境であるWSL上でDockerを使ってFastAPIとPostgreSQLのアプリケーションを立ち上げるところまでを解説します。

【Kubernetesを学ぶ:7日目】本章の振り返りと次のステップ

こんにちは、たねやつです。 Kubernetes基礎の章はこれで終了です。お疲れ様でした! この章では、コンテナオーケストレーションの王様であるKubernetesに焦点を当て、その概念から、実際にアプリケーションをデプロイして公開するまでの一連の流れを体験し…

【Kubernetesを学ぶ:6日目】Serviceリソースでアプリケーションを外部に公開する

こんにちは、たねやつです。 前回、FastAPIアプリケーションをDeploymentとしてKubernetesクラスタにデプロイしました。Podが2つ、元気に動いていることも確認できました。 しかし、このままではPodはクラスタ内部のネットワークにしか接続されておらず、私…

【Kubernetesを学ぶ:5日目】FastAPIアプリケーションをKubernetesにデプロイする

こんにちは、たねやつです。 前回、Deploymentというリソースを使えば、自己修復やスケーリングが可能なアプリケーションを定義できることを学びました。 今回は、その知識を実践に移します。Dockerを学ぶで作成し、コンテナ化したFastAPIアプリケーションを…

【Kubernetesを学ぶ:4日目】マニフェストファイルでPodとDeploymentを定義する

こんにちは、たねやつです。 前回はkubectlコマンドを使って、クラスタの状態を「見る」方法を学びました。 今回は、いよいよ自分たちのアプリケーションをクラスタに配置(デプロイ)するための第一歩として、Kubernetesにおける「設計図」の役割を果たすマ…

【Kubernetesを学ぶ:3日目】kubectlコマンドでKubernetesクラスタを操作する

こんにちは、たねやつです。 前回、Minikubeを使ってローカルにKubernetesクラスタを構築しました。しかし、今のままではクラスタはただ動いているだけの箱にすぎません。 今回は、この箱の中身を覗いたり、情報を取得したりするための必須ツール、kubectl(…

【Kubernetesを学ぶ:2日目】ローカル環境にKubernetesクラスタを構築する

こんにちは、たねやつです。 前回はKubernetesの概念とアーキテクチャについて学びました。理論を学んだら、次は実践です。 今回は、自分のPC上にKubernetesの動作を検証するためのローカルクラスタを構築します。これにより、クラウドサービスを使わなくて…

【Kubernetesを学ぶ:1日目】コンテナオーケストレーションとKubernetesの世界へ

こんにちは、たねやつです。 前章ではDockerを使ってアプリケーションを「コンテナ」という箱に詰める方法を学びました。しかし、実際のシステムでは無数のコンテナが協調して動作します。これらを人力で管理するのは現実的ではありません。 そこで今回のテ…

【Dockerを知る:第7回】docker composeで起動したコンテナ間の疎通を確認する

こんにちは、たねやつです。 今回の連載の総仕上げです! 前回はDocker Composeを使ってWeb APIとデータベース(PostgreSQL)のコンテナを同時に起動しました。しかし、まだAPIとデータベースは連携しておらず、それぞれが独立して動いているだけでした。 最…

【Dockerを知る:第6回】 Docker ComposeでWeb APIとDBを連携させる

こんにちは、たねやつです。 前回はDocker Composeを使って、単一のAPIコンテナをスマートに管理する方法を学びました。 今回は、Docker Composeの最も強力な機能の一つである、複数コンテナの連携に挑戦します。前回作成したFastAPIアプリケーションに、永…

【Dockerを知る:第5回】 Docker Composeで複数のコンテナを管理する

こんにちは、たねやつです。 これまでは、docker runコマンドを使って単一のコンテナを起動・管理してきました。しかし、実際のアプリケーションでは、Webサーバー、データベース、キャッシュサーバーなど、複数のコンテナが連携して動作することがほとんど…

【Dockerを知る:第4回】 基本的なDockerコマンドを使いこなす

こんにちは、たねやつです。 前回、Dockerfileを作成し、docker buildとdocker runを使ってアプリケーションをコンテナとして起動しました。 しかし、一度起動したコンテナはどのように管理すればよいのでしょうか?今回は、起動中のコンテナを確認したり、…

【Dockerを知る:第3回】Dockerfileを作成してPythonアプリをコンテナ化する

こんにちは、たねやつです。 前回、FastAPIで簡単なWeb APIを作成しました。今はまだ、私たちのローカルPCのPython環境でしか動作しません。 今回は、このAPIをコンテナ化するための設計図であるDockerfileを作成していきます。これにより、私たちのアプリケ…

【Dockerを知る:第2回】 PythonとFastAPIで簡単なWeb APIを作成する

こんにちは、たねやつです。 Docker環境の準備が整ったので、次はその上で動かすアプリケーションを作成していきます。 このロードマップでは、AI/MLモデルのサービング(推論結果を返す口)としてAPIサーバーを構築することが一つのゴールになります。そこ…

【Dockerを知る:第1回】 コンテナ技術の基礎とWSL上でDocker環境構築

こんにちは、たねやつです。 今回からDockerとDocker Composeの基本的な使い方をFastAPIを用いて全7回で学んでいこうと思います。 今回はDockerをとりあえずWSL環境上で使えるようにしていきます。 この記事でできること 事前に必要なもの Dockerとは何か?…

【Dockerを知る:第5回】 Docker Composeで複数のコンテナを管理する

こんにちは、たねやつです。 これまでは、docker runコマンドを使って単一のコンテナを起動・管理してきました。しかし、実際のアプリケーションでは、Webサーバー、データベース、キャッシュサーバーなど、複数のコンテナが連携して動作することがほとんど…