1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Docker】Dockerfileの記述方法

Last updated at Posted at 2022-03-14

はじめに

 本記事は、プログラミング初学者、学習を進めていて疑問に思った点について調べた結果を備忘録も兼ねてまとめたものです。
 そのため、記事の内容に誤りが含まれている可能性があります。ご容赦ください。
 間違いを見つけた方は、お手数ですが、ご指摘いただけますと幸いです。

Dockerfileの記述方法

# FROMでベースとなるイメージを決める
# 決め方
  # 極力シンプルなものを選ぶ
  # webサーバーと一緒になったものを選ぶ(検証サーバーとwebサーバーは役割が似ているため)
FROM php:7.3.29-apache

# パッケージのアップデートや拡張機能のインストールをRUNで行う
# Dockerfileに書くかDocker-compose.ymlに書くかの判断
   # Dockerfileに書いたものはイメージにする際に1度だけ実行される。イメージ作成後は変更されない。
   # → 全員が一致させておいた方が良いもの(インストール等)はDockerfileに記述した方が良い。
   # imageからcontainerになるタイミングで指定したいものについてはdocker-compose.ymlに記述した方が良い。
   # → 各ユーザーがdocker-compose.ymlを変更すれは変更ができるため。
RUN apt-get update \
  && apt-get install -y zlib1g-dev \
  && apt-get install -y zip unzip \
  && apt-get -y install libzip-dev \
  && docker-php-ext-install pdo_mysql mysqli mbstring zip\
  && docker-php-ext-enable mysqli \
  && a2enmod rewrite

# composerのインストール
RUN curl -sS https://getcomposer.org/installer | php \
  && mv composer.phar /usr/local/bin/composer \
  && chmod +x /usr/local/bin/composer

# WORKDIRでイメージ内のどこでコマンドを実行するのかを指定する
WORKDIR /var/www/html

# 変更が生じることのない環境変数(タイムゾーン、コンポーザー周辺等)を設定する
ENV COMPOSER_ALLOW_SUPERUSER 1
ENV COMPOSER_HOME /composer
ENV PATH $PATH:/composer/vendor/bin
# タイムゾーン設定
ENV TZ=Asia/Tokyo

1
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?