備忘録(その他)( docker compose ymlファイル)

20240107Docker備忘録(その他)( docker compose ymlファイル)

こちらは、パソコン素人です。
Docker素人です。
以下違いだらけです。自分用メモ。

(もし、投稿内容(引用等)に不具合がありましたら、削除いたしますので、ご指摘下さい。)

 

「Docker」というものがあるらしい。
ウィキペディアを見たが、よくわからない。

 

*************************************************
前回まで・・・
youtube「だれでもエンジニア」様のをまねてみる。(感謝)

docker エンジンの起動など(localPCで表示など)
*************************************************

 

今回は、別のyoutube徳田啓様の「Docker 最初の一歩」を視聴したのものの自分用メモ。
(素人なので、自信なし。汗)

動画の前半は、インストールなどの説明。

後半は、Docker Composeを使用したlocalPCでの表示など。

 

***********************************************前置き
ネットで検索すると、 Docker Composeとは
「複数のコンテナを定義し実行する Docker アプリケーションのためのツール
YAMLファイルを使い、アプリケーションのサービスを設定し、コマンドを1つ実行するだけで、設定内容に基づいた全てのサービスを生成・起動」
とのことです。
************************************************


「だれでもエンジニア様」で勉強した前回までのは、dockerエンジンの使い方で、dockerfileを用いた1個のアプリ開発と考えて良さそう。

今回の徳田啓様の「Docker 最初の一歩」は、複数のアプリ開発を並行して進めるためのやり方のようです。
そのためには、docker composeを使用。(ymlファイルは、当該サーバー用の設定ファイルのようです。)


****************************************
注:docker composeでは、DockerFileは不要なのか?
docker-compose.ymlファイルで直接イメージを指定すれば、Docker Composeでコンテナを起動するためのDockerfileは必要ないですが、
既存のイメージに対して追加の設定やカスタマイズを行いたい場合は、Dockerfileを作成し、それをdocker-compose.ymlから参照します。
引用元Qiita
(ごん)様
Docker Composeについてざっくり理解する【概要 / ymlファイル書き方 / コマンド操作】(感謝いたします)
****************************************

 

で、後半の内容:docker composeを使用した方法ですが、
まず、デスクトップなどに、作業用フォルダを作ります(SAMPLE-PROJECT)。
それをVSコードにドロップします。
その中に、フォルダを作ります(web)。
その中に、index.phpファイルを作ります。
ファイルの内容
<?php
phpinfo();
(PHPの設定情報を表示するらしいです。)

 

で、もう一つymlファイル(docker-compose.yml)を入手して、
上記のwebファルダと同列にドロップします。
docker-compose.ymlは、徳田啓様の「Docker 最初の一歩」に用意されたGitHubのリンクから入手しました。

 

docker-compose.ymlの内容は、
version: '3.5'とか※、
  php-apache:
  mysql:
  phpmyadmin:
などローカルサーバーの設定でした(多分。汗)。

 

で、docker compose up -d でサーバーを起動します。
(この場合、VSコードで新しいターミナルを開いて、上記コマンドを実行します。)

で、localhost:8080で、PHPの設定情報が表示されたら成功。

(サーバーを止めたければ、docker compose stop だそうです。)

 

※上記のymlファイルのversion: '3.5'は、bingchatによると
Docker Composeファイルのversion: '3.5'は、使用するComposeファイル形式のバージョンを指定しています。
バージョン3.5のComposeファイルは、Docker Engineリリース17.12.0+でサポートされています。
だそうです。使う時は、本当に↑bingchatが正しいか確認します。

 

その他
(「だれでもエンジニア様」で勉強した前回までのは、dockerエンジンの使い方で、dockerfileを用いた1個のアプリ開発と考えて良さそう。と記載しましたが、まだ途中までの視聴です。
この先、docker composeが出てくるのかも。)