最新のソフトウェア開発において、Docker は開発者がアプリケーションを迅速に構築、デプロイ、管理できるよう支援する不可欠なツールとなっています。 Golang は効率的で簡潔なプログラミング言語として、開発者にも好まれています。では、Docker で Golang を使用してアプリケーションを開発するにはどうすればよいでしょうか?この記事では、Golang アプリケーション用の Dockerfile を作成し、chromedp ライブラリを使用して自動 Web テストを実装する方法を紹介します。 Golang、Docker、Web 自動テストに興味がある場合は、読み続けてください。
chromedpを使用してユーザーのローカルChromeに接続するgolangコードがあります これは私のコードです:
リーリーそこで、クライアントがこのアプリケーションを使用するために必要なものを含む dockerfile を作成しました (Chrome をインストールし、イメージ内に golang を構築しました)
ドッカーファイル:
リーリーイメージは問題なく正常に構築されました しかし、Docker イメージをローカルでテストすると、次のエラーが発生します:
リーリーこのエラーは何を意味しますか?私のChromeが動作していないのですが?どうすれば実行できますか?
Chrome ブラウザは build-stage
にのみインストールされます。 build-release-stage
によって作成された最終イメージでは使用できません。
この dockerfile を使用して Chrome をインストールしようとします:
リーリーしかし、次のメッセージが表示されて失敗します:
リーリーChrome を簡単にインストールできる別のベース イメージを選択する必要があると思います。より良いオプションは、chromedp/headless-shell
をベース イメージとして使用することです。この画像には、非常に小さいクロムのヘッドレス シェルが含まれています。以下のデモ dockerfile では、最初にテスト バイナリをコンパイルし、次に chromedp/headless-shell
イメージでテストを実行することも示しています。
リーリー
以上がGolang chromedp dockerfileの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。