Docker DesktopのDocker AI「Gordon」を使う
最近、いろいろなソフトウェアにAI機能が搭載されていますが、Docker Desktopにも実装されていたので触ってみることにしました。 私が触ったのはバージョン4.40.0のDocker Desktopで、このAI機能はベータ機能として利用可能になっています。利用するにはDockerのアカウントがあり、Docker Desktopにログインしている必要があるようです。 インストール直後は機能が有効化されていないので、Docker Desktopを起動したらDocker AIを有効化してください。 これだけで利用可能になります。 Docker AI (Gordon)のバックエンドはDocker社のサーバー上で実行されているようです。Docker Desktopがそのクライアントになる構成で動いていて、一部は外部のAIサーバーを利用して動くため、データのアップロードに関する規約に同意する必要があります。 Docker AIに自由文で質問する Docker AI機能を有効化すると、次のような画面に切り替わります。5つの作業のショートカットのほか、一般的なAIと同様、プロンプトの入力欄が表示されています。ショートカットではDockerfileの最適化、Dockerfileの分析と評価、アプリケーションのDocker化の補助をやってくれます。 プロンプトを入力して、コンテナに関する質問をDocker AIに尋ねて回答してもらうこともできます。 残念だったのは、文字入力にCTK圏独自の文字入力に対する最適化がされていない点は残念でした。 ただ、テキストエディターなどで日本語の質問文で質問を書いてコピペしてみると、日本語で回答してくれました。 質問したこと: DockerでLinuxコンテナでGo言語で作ったアプリケーションを実行したい。main.goだけがある前提で、この後何をすればいいか教えてください。 回答: Go言語で作成したアプリケーションをDockerでLinuxコンテナとして実行するためには、以下の手順を実行します。 Dockerfileの作成: まず、main.goがあるディレクトリにDockerfileを作成します。このファイルには、Goアプリケーションをビルドして実行するための指示が含まれます。 # ベースイメージとして公式のGolangイメージを使用 FROM golang:1.20-alpine AS builder # 作業ディレクトリを設定 WORKDIR /app # アプリケーションのソースコードをコンテナにコピー COPY main.go . # Goアプリケーションをビルド RUN go build -o myapp main.go # 最終的な軽量イメージを作成 FROM alpine:3.17 # ビルドしたバイナリをコピー COPY --from=builder /app/myapp /usr/local/bin/myapp # アプリケーションのポートを公開 EXPOSE 8080 # アプリケーションを実行 CMD [“myapp”] Dockerイメージのビルド: ターミナルで、Dockerfileがあるディレクトリに移動し、以下のコマンドを実行してDockerイメージをビルドします。
Read more...