🐳
環境構築の方法(docker)
docker基礎
そもそもdokcerとは
イメージ:自分のパソコンとは別に新しくパソコンを作ることができるもの
なぜ使うのか
ファイル自体がパソコンの役割をするので同じ記述のファイルを使用することで同じ環境でアプリケーションを開発できる
使うファイル
-
Dockerfile:青のクジラ
イメージ:パソコン本体
-
docker-compose.yml:赤のクジラ
イメージ:パソコンの管理者
環境構築編
【Dockerfile】
-
FROM
イメージ:使いたい言語を選ぶ感じ
#FROM 言語など:バージョン FROM python:3.11 FROM php:8.3 FROM node:22.5
-
WORKDIR
イメージ:「cd」コマンドみたいな感じ
#WORKDIR /任意のパス(絶対パス) WORKDIR /app WORKDIR /workdir
-
COPY
イメージ:自分のパソコン ➡︎ dockerのパソコン ファイルをコピーできる
#COPY 自分のパソコンのパス dockerのパソコンのパス(絶対パス) COPY . COPY . /app COPY ./app /app
【docker-compose.yml】
docker-compose.ymlファイルの構造
#ここのservicesは必須
#インデントを開けることに注意しよう
services:
任意のパソコン名:
パソコンの設定
パソコンの設定
パソコンの設定
任意のパソコン名:
パソコンの設定
パソコンの設定
パソコンの設定
任意のパソコン名:
パソコンの設定
パソコンの設定
パソコンの設定
-
build
イメージ:使いたいパソコンを選ぶ感じ
services: back-pc: #build: Dockerファイルのパス build: ./Dockerfile build: ./pyton/Dockerfile
-
volumes
イメージ:自分のパソコンとdockerのパソコンでファイルの状態を共有する感じ
services: back-pc: #volumes: # - 自分のパソコンのパス:dockerのパソコンのパス volumes: - .:/app volumes: - ./app:/app
【dokcer-composeコマンド】ターミナルで実行
-
docker-compose build
イメージ:パソコンの起動
docker-compose build
-
docker-compose run パソコン名 /bin/bash
イメージ:パソコンの使用
docker-compose run back-pc /bin/bash docker-compose run front-pc /bin/bash
アプリ起動編
【Dockerfile】
-
RUN
イメージ:パソコンを起動した時にあらかじめ実行するコマンドを設定できる
#RUN 実行したいコマンド RUN pip install django RUN pip install django-storages RUN pip install django-environ
-
EXPOSE
イメージ:ポートにアクセスできるようにする
#EXPOSE ポート番号 EXPOSE 8000 EXPOSE 3000 EXPOSE 5173
-
CMD
イメージ:パソコン起動時にアプリケーションを立ち上げる
#CMD 使用したいコマンドをリスト形式で CMD ["python", "manage.py", "runserver"] CMD ["php", "artisan", "serve"] CMD ["npm", "run", "dev"]
【docker-compose.yml】
-
port: ポート
イメージ:自分のパソコンのポートとdockerのパソコンのポートを繋げる
services: back-pc: #ports: # - 自分のパソコンのポート:dockerのパソコンのポート ports: - 8000:8000 ports: - 3000:3000 ports: - 5173:5173
【dokcer-composeコマンド】ターミナル
-
dokcer-compose up -d
イメージ:アプリケーションの起動
dokcer-compose up -d
-
dokcer-compose logs
イメージ:ログの確認(エラーなど)
dokcer-compose logs
Discussion