Dockerを使用してプロジェクトをビルドするようにGoCDエージェントを構成しようとしています。元々、私のGoAgentはSYSTEMとして実行されていました。これは、Windowsのデフォルトのインストールであるためですが、ビルド中に問題が発生することがわかりました($ env:TEMPが定義されていないか、奇妙な場所で定義されているため、奇妙な失敗が発生していました)。
Goエージェントをローカルアカウントに切り替え、サービスとして実行するためのアカウント権限を付与しました。これは、Dockerイメージを作成しようとするまではうまく機能しました。ユーザーとして完全に機能するスクリプトがありますが、GoCDエージェントとして実行すると失敗します。
接続中のエラー:投稿http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.32/build?buildargs =%7B%22EngineDir%22%3A%22C%3A%5C%5CInfinity%22%2C%22ImageVersion% 22%3A%222.0.0%22%7D&cachefrom =%5B%5D&cgroupparent =&cpuperiod = 0&cpuquota = 0&cpusetcpus =&cpusetmems =&cpushares = 0&dockerfile = Dockerfile&labels =%7B%7D&memory = 0&memswap = 0&networkmode = default&rm = 1&session = 29985 infinity%3Alatest&t = invoke-infinity%3A2.0.0&target =& ulimits = null:open //./pipe/docker_engine:アクセスが拒否されました。Windowsのデフォルトのデーモン構成では、接続するには、Dockerクライアントを昇格して実行する必要があります。このエラーは、dockerデーモンが実行されていないことも示している可能性があります。
ユーザーをdocker-usersグループに追加しようとしましたが、役に立たないようです。この記事http://dille.name/blog/2017/11/29/using-the-docker-named-pipe-as-a-non-admin-for-windowscontainers/をフォローしようとしましたが、エラーが発生します。 DockerWindowsは「ホスト」をサポートしていません。
Windowsの管理者以外のユーザーがdockerbuildを実行する方法はありますか?
ありがとう
これは、Docker forWindowsバージョン18.03.0-ceで修正されました。基本的に、このバージョンでは、すべてパイプにアクセスできるdocker-usersというローカルグループが作成されます。目的のユーザーをそのグループのメンバーとして追加するだけです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加