ホームページ >バックエンド開発 >Golang >Beego の Vagrant と Docker を使用したローカル開発とテスト

Beego の Vagrant と Docker を使用したローカル開発とテスト

WBOY
WBOYオリジナル
2023-06-22 17:13:52743ブラウズ

クラウド コンピューティングと仮想化テクノロジが成熟し続けるにつれて、ますます多くの開発者がローカルの開発とテストに仮想化テクノロジを使用し始めています。仮想化テクノロジーは、開発環境を分離するのに役立ち、複数の環境の管理と開発をより便利かつ柔軟にします。この記事では、ローカル開発とテストに Beego フレームワークを使用する場合に、Vagrant Docker 開発環境をセットアップする方法を紹介します。

Vagrant と Docker とは何ですか?

Vagrant は、仮想化開発環境を迅速に構築および管理できる仮想化テクノロジです。 Vagrant はさまざまな仮想エンジン (VirtualBox、VMware、Hyper-V など) をサポートできるため、現在の開発環境に適したエンジンを選択して仮想開発環境を実行できます。

Docker は、アプリケーションとサービスを迅速に作成、デプロイ、実行するのに役立つコンテナ化テクノロジです。 Docker コンテナはあらゆる環境で実行でき、強力な環境分離およびバージョン管理メカニズムを提供します。

なぜローカル開発とテストに Vagrant Docker を使用するのでしょうか?

複数の環境でコードをテストする必要がある場合、実稼働環境と同じくらい正確に開発およびテストする必要があり、特に各環境の違いや構成が実稼働環境と一致している必要があります。この場合、Vagrant Docker を使用すると、開発者は環境パラメータ設定の不一致や誤操作によるエラーを心配することなく、複数の環境で複雑なテストやメンテナンス作業を完了できます。

Vagrant と Docker のインストール

Vagrant Docker の使用を開始する前に、これら 2 つのツールをマシンにインストールする必要があります。どちらのツールにも充実したドキュメントとコミュニティ サポートがあるため、インストール プロセス中は次の手順に注意する必要があります。

  1. [Vagrant 公式 Web サイト](https://www.vagrantup.com) にアクセスしてください。 /downloads ) を選択し、Vagrant をダウンロードします。
  2. 現在使用しているオペレーティング システムに応じて、[Docker 公式 Web サイト](https://docs.docker.com/engine/install/) から Docker をダウンロードしてインストールします。 Dockerイメージのセットアップが必要なので注意してください。

Vagrant での Docker 環境の構成

上記の手順により、Vagrant と Docker が正常にインストールされました。これで、Vagrant を使用して新しい仮想マシンを実行できるようになります。 Docker オペレーティング環境。 Vagrant を使用して仮想マシンを実行する前に、Vagrantfile を構成する必要があります:

Vagrant.configure("2") do |config|

  config.vm.box = "ubuntu/focal64"
  config.vm.network "forwarded_port", guest: 8080, host: 8080

  config.vm.provider "virtualbox" do |vb|
    vb.memory = "2048"
    vb.cpumax = "2"
    vb.cpus = "1"
  end

  config.vm.provision "docker"
end

上記の構成ファイルは次のことを意味します:

  1. Use ubuntu/focal64 as the仮想マシンの操作 システム
  2. 仮想マシンの 8080 ポートをホストの 8080 ポートにマップします
  3. 仮想マシンに割り当てられたメモリ サイズは 2048MB
  4. 仮想マシンに割り当てられる CPU は 2 コアです。

Vagrant 仮想マシンの起動

次に、次のコマンドを実行して Vagrant 仮想マシンを起動します。

vagrant up

このコマンドを実行すると、Vagrant が自動的にダウンロードされ、 Ubuntu 仮想マシンをインストールするには、このプロセスに時間がかかる場合があります。インストールが完了すると、次のコマンドを使用して SSH 経由で Vagrant 仮想マシンにログインできるようになります。

vagrant ssh

Docker を使用して Beego アプリケーションを実行します

上記の操作により、 Docker ランタイム環境の仮想マシンが正常に作成されました。次に、Docker を使用して Beego アプリケーションを実行できます。次の手順に従う必要があります。

  1. Vagrant 仮想マシンで git clone コマンドを使用して、Beego アプリケーションをダウンロードします。ソースコード。
  2. Beego アプリケーションのルート ディレクトリに Dockerfile という名前のファイルを作成します。 Dockerfile には、Docker コンテナーを構築するためのいくつかの手順が含まれています。以下は例です:
FROM golang:1.16

ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH

RUN apt-get update && apt-get -y install build-essential git-all

RUN mkdir -p $GOPATH/src/${MY_APP_PATH}/
ADD . $GOPATH/src/${MY_APP_PATH}/

WORKDIR $GOPATH/src/${MY_APP_PATH}/
RUN go install ${MY_APP_PATH}

ENTRYPOINT ${GOPATH}/bin/${MY_APP}

この Dockerfile では、Golang-1.16 をベース イメージとして使用し、必要な依存関係をいくつかダウンロードしてインストールします。次に、すべてのソース コードをイメージにコピーし、golang の go install コマンドを使用して Beego アプリケーションをビルドしてインストールします。コンテナが起動すると、Beego アプリケーションが

  1. ビルド コンテナを起動するためのエントリ ポイントとして機能します。 Beego アプリケーションのルート ディレクトリで、次のコマンドを実行します:
docker build --build-arg MY_APP_PATH=github.com/your-username/your-app -t my-app-name:v1 .
  1. コンテナを実行します。 Beego アプリケーションのルート ディレクトリで、次のコマンドを実行します。
docker run --rm -it -v $(pwd):/go/src/github.com/your-username/your-app -p 8080:8080 my-app-name:v1

このコマンドでは、現在のディレクトリをコンテナ内の /go/src/github.com/ にバインドします。 -username/your-app ディレクトリ。これにより、コードの変更がコンテナ内で同期的に更新されます。同時に、コンテナの 8080 ポートをホストの 8080 ポートにマップし、ブラウザからコンテナ内の Beego アプリケーションにアクセスできるようにします。

概要

上記の手順は、Vagrant Docker を使用してデバッグ環境を構成し、運用環境と同じ開発とテストを容易にする方法を理解するのに役立ちます。適切なローカル開発環境は、開発とプロセスをスピードアップし、制限を打ち破り、より素晴らしいアイデアを革新することができます。

以上がBeego の Vagrant と Docker を使用したローカル開発とテストの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。