Go 言語は、今日のインターネット開発で最も人気のある言語の 1 つであり、日常の開発では、Docker コンテナを使用してサービスのローカル開発環境を構築することが必要になることがよくあります。この記事では、Go 言語開発における Docker コンテナのアプリケーションについて簡単に説明します。
Docker は、開発者が開発環境を迅速にセットアップし、イメージを構築し、アプリケーションをローカルに展開するなどの作業をローカルで行うのに役立つ仮想化テクノロジです。異なる環境によって引き起こされる、開発、テスト、デプロイメントなどにおける不一致。
Docker コンテナーは Docker の中心概念の 1 つであり、アプリケーションを実行できる Docker イメージに基づいて開始される分離されたプロセスです。各コンテナには完全なファイル システム、アプリケーション プロセス、ネットワーク スタックなどが含まれており、ホストから分離されていますが、カーネルをホストと共有できます。
Go 言語開発では、通常、次の 2 つの Docker コンテナ アプリケーションを使用します。
(1) ビルドローカル開発環境
Go 言語アプリケーションを開発する場合、プログラムのビルドとテストには開発環境を使用する必要があります。開発環境には通常、Go 言語コンパイラやコード エディタなどが含まれます。 Docker コンテナを使用すると、オペレーティング システムの違い、バージョンの違い、その他の要因によって生じる環境の違いを回避できます。
たとえば、Go 言語アプリケーションをローカルで開発する場合、次のコマンドを使用して Go1.16 を含むコンテナを作成できます:
docker run -it --rm -v "$PWD":/go/src/myapp -w /go/src/myapp golang:1.16 bash
Explain:
は、対話型コンテナーの作成、つまりシェルの開始を意味します。
は、コンテナが終了時に自動的に削除されることを意味します。
は、ローカルの現在の作業ディレクトリをコンテナの /go/src/myapp ディレクトリにマッピングすることを意味します。
は、コンテナーの作業ディレクトリを /go/src/myapp ディレクトリに設定することを意味します。
は、 golang:1.16 イメージを使用してコンテナーを起動することを意味します。
は、bash シェルを使用することを意味します。
docker run --rm -v "$PWD":/app -w /app golang:1.16-alpine go build -v docker run --rm -v "$PWD":/app -w /app -p 8080:8080 golang:1.16-alpine ./myapp
説明:
以上がローカルで開発された Go 言語の Docker コンテナの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。