LoginSignup
1
0

Dockerイメージのタグ構成(PHP&PostgreSQL)

Last updated at Posted at 2024-02-23

はじめに

初めまして!
エンジニアになって数年、今まで本を読むだけでしたが、もっとプライベートで楽しみながら成長したい!自分が学んだ足跡を残していきたい!と思い記事をかきました!
最終的には自在に開発できるようになりたいと思っています。:triumph:
いろいろな記事を参考にさせてもらっています。:bow_tone2:
その中でもこれってどういう意味?とかつまづいたところを念入りに書いていこうかと思います。:fist:

今回の目的

Dockerのイメージを選ぶときに、「これどう意味なの?何を基準に判断すればいいの?」となりました。使う範囲でいいから一通りの内容やルールを理解してから使いたいですよね。:thinking:
対象範囲はPHPとPostgreSQLに絞りました。長くなったので記事は二つに分けています!

今回は前回の続きになります!

使用したものや事前準備

・Docker Hub
・PHP
・PostgreSQL

主に参考にさせていただいた記事

Docker Hubの情報を読みながら、わからないところは参考記事やChatGPTに解説してもらいました。
参考記事は本文中に掲載します!

PHPのタグ構成

早速ですが下記の中央より下のところに説明がありました。
今回は読み合わせになりそうなので「端的に言えばこういうことでは?」のレベルでまとめていきたいと思います。

※確実な情報は下記のリンクを参照ください。

php:<version>-cli

コマンドラインに特化したイメージ。コマンドラインアプリケーション開発やスクリプト実行用。
Webサーバーにはならない。

php:-apache

DebianとApache httpdイメージ。
Webサーバーが組み込まれているため、Webアプリケーションの開発やデプロイメントに最適。

php:-fpm

アプリケーションサーバーにあたる。Nginxコンテナとの組み合わせで使われる。
PHPのFastCGIで効率的に動的ページを作成する。

php:-alpine

Alpine Linux。軽量最低限のため必要なものは自分でインストールしてカスタマイズする。
公式イメージが正しいと思うなよっていうのは、目から鱗でした。ここでDockerFileが必要なんだなとも。

PostgreSQLのタグ構成

DebianかAlpine Linuxの二択でした。
軽量にしたいからAlpne Linuxでいいんじゃないかと思ったが互換性のないツールもあるため簡単に選んでいいものではなさそう。
また、PostgreSQLのタグ構成のDockerfileを見ると、bookworm-slimとなっているため軽量対策も進んでそうです。

Slimがついているイメージは使用頻度の低いパッケージを削除します。

-bookworm

Debian(Linuxディストリビューション)のバージョン12

-bullseye

Debian(Linuxディストリビューション)のバージョン11

-alpine

Alpine Linux

最後に

たださらっとみただけではメリットデメリットをはっきり説明できるところまで行けませんでしたが、どんな意味を持つかはわかりました!
コンテナ構築に活かしまくります!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0