1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Dockerをポートフォリオに取り入れる方法

Posted at

この記事では、Dockerをポートフォリオに効果的に取り入れる方法を説明します。

1. Dockerを使ったプロジェクトを作成する

Dockerを活用したプロジェクトをポートフォリオに掲載するには、実際にDockerを導入したプロジェクトを作成することが重要です。

プロジェクトのアイデア例

フルスタックアプリケーション:

フロントエンド: ReactやVue.js

バックエンド: GoやNode.js

データベース: PostgreSQLやMongoDB

例: タスク管理アプリ、ブログサイト、eコマースアプリ

マイクロサービスアーキテクチャ:

複数のサービスをDockerコンテナで分離し、それぞれを独立して運用。

例: 認証サービス、データ処理サービス、APIゲートウェイ

データ処理アプリケーション:

データ収集や分析用のツール。

例: CSVファイル解析ツール、APIデータ収集ツール

2. Dockerを導入する方法をポートフォリオで説明

Dockerの活用ポイントをポートフォリオに明確に記載します。

ポートフォリオの構成例

プロジェクト概要:

アプリケーションの目的や機能、技術スタック(Dockerを含む)を説明。

Dockerの活用箇所:

Dockerfileで環境構築を自動化した部分。

Docker Composeで複数のサービスを管理した例。

クラウドサービス(例: AWS ECS)でDockerコンテナをデプロイした例。

ソースコード:

GitHubリポジトリなどにソースコードを公開し、Docker関連ファイルも含める。

手順書:

Dockerを使ったプロジェクトの起動方法を記載。

例: docker build, docker run, docker-compose upなどのコマンドを説明。

3. 具体的なプロジェクト例

以下にDockerを利用したポートフォリオ用プロジェクトの例を示します。

例1: タスク管理アプリ

構成:

フロントエンド: React

バックエンド: Go

データベース: PostgreSQL

Docker化:

Reactの開発環境とGoのAPIサーバーを別々のDockerコンテナで構築。

Docker Composeでフロントエンド、バックエンド、データベースを一括管理。

docker-compose.ymlの例

version: '3'
services:
  frontend:
    build:
      context: ./frontend
    ports:
      - "3000:3000"
    depends_on:
      - backend

  backend:
    build:
      context: ./backend
    ports:
      - "8080:8080"
    environment:
      - DB_HOST=database

  database:
    image: postgres:15-alpine
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
      POSTGRES_DB: taskdb
    ports:
      - "5432:5432"

例2: マイクロサービス構成

構成:

複数のサービスを分離(認証、データ処理、UIなど)。

各サービスを独立したDockerfileで管理。

Docker化:

マイクロサービスをDocker Composeで一括管理。

RedisやMySQLなどのサービスをネットワークで連携。

4. デプロイ方法を含める

Dockerを使ったデプロイの実例をポートフォリオに含めることで、実務での利用経験をアピールできます。

デプロイ例

クラウドサービス:

AWS ECS, Google Cloud Run, Azure Container InstancesなどにDockerコンテナを展開。

CI/CDの導入:

GitHub ActionsやGitLab CI/CDでDockerイメージのビルド、テスト、デプロイを自動化。

GitHub Actionsの例

name: Docker CI/CD

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v3

    - name: Build Docker image
      run: docker build -t myapp:latest .

    - name: Push to Docker Hub
      run: |
        echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
        docker push myapp:latest

5. Dockerの強みをアピール

ポートフォリオではDockerの以下の強みをアピールしましょう。

環境構築の容易さ:

DockerfileやDocker Composeを使って手間を削減。

移植性:

どの環境でも同じように動作する。

デプロイの効率化:

クラウド環境への迅速な展開が可能。

まとめ

Dockerをポートフォリオに取り入れることで、環境構築やデプロイのスキルをアピールできます。具体的なプロジェクト例や手順を盛り込み、閲覧者がDockerの活用を簡単に理解できるようにしましょう。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?