[解決済み] .gitlab-ci.yml で docker-compose build を実行する。
2023-06-14 08:26:08
質問
私は
.gitlab-ci.yml
ファイルがあり、そこには以下の内容が含まれています。
image: docker:latest
services:
- docker:dind
before_script:
- docker info
- docker-compose --version
buildJob:
stage: build
tags:
- docker
script:
- docker-compose build
しかし
ci-log
メッセージを受け取ります。
$ docker-compose --version
/bin/sh: eval: line 46: docker-compose: not found
私は何を間違えているのでしょうか?
どうすればいいのでしょうか?
編集 docker-composeをサポートする.gitlab-ci.ymlの設定の最小限の例を示す別の回答を追加しました。
docker-compose
は Python パッケージとしてインストールすることができますが、これはあなたのイメージには同梱されていません。あなたが選んだイメージは、Python のインストールさえ提供していません。
$ docker run --rm -it docker sh
/ # find / -iname "python"
/ #
Pythonを探すと、空っぽの結果が返ってきます。そのため、あなたのニーズに合った、理想的にはdocker-composeがインストールされている、あるいは作成した別のイメージを選択する必要があります。
あなたが選んだdockerイメージはAlpine Linuxを使用しています。もしAlpine Linuxに慣れていないのであれば、これをベースにして、別のイメージを作成することもできます。
私は同じ問題があったので、公開されている GitHub リポジトリに Dockerfile を作成し、それを私の Docker Hub アカウントと接続して、GitHub リポジトリにプッシュするたびに私のイメージを構築する自動ビルドを選択しました。そうすると、GitLab CIで自分のイメージに簡単にアクセスできるようになります。
関連
-
[解決済み] Dockerコンテナの中から、マシンのローカルホストに接続するにはどうすればよいですか?
-
[解決済み] Docker Dockerコンテナからホストへのファイルコピー
-
[解決済み] ホストからDockerコンテナにファイルをコピーする方法は?
-
[解決済み] リポジトリを使用せずに、あるホストから別のホストにDockerイメージをコピーする方法
-
[解決済み] ホストからDockerコンテナのIPアドレスを取得する方法
-
[解決済み] 古いDockerコンテナを削除する方法
-
[解決済み] Dockerでイメージのクリーンビルドを強制する方法
-
[解決済み] Docker-Composeを使用して、複数のコマンドを実行する方法
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み] Docker ENTRYPOINTとKubernetesコンテナ仕様COMMANDの違い?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Docker compose、net:hostでコンテナを実行する。
-
[解決済み] docker unauthorized: 認証が必要 - ログインに成功するとプッシュされる
-
[解決済み] Docker-compose マウントされたボリュームにユーザーとグループを設定する
-
[解決済み] dockerコンテナを停止または再起動できない
-
[解決済み] dockerの時刻がホストの時刻と同期していることを確認する方法は?
-
[解決済み] dockerで複数のターミナルを開くには?
-
[解決済み] dockerイメージフィルタの使用方法
-
[解決済み] Kubernetesの秘密を解き明かす
-
[解決済み] Ansibleの二重中括弧のエスケープ
-
[解決済み] Docker EE (Enterprise Edition)、Docker CE (Community Edition)、Docker (Custom Support) の違いは何ですか?