0
0

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 1 year has passed since last update.

Docker入門

Last updated at Posted at 2022-11-09

コマンド

docker login

・dockerにログイン

docker run

オプション
--name
--rm
--volume
--it コンテナ内に入る
--p
--env
-v ストレージをホストとコンテナで共有する(ストレージ永続化)

docker run 

#オプション
docker run --name 
docker run --rm
docker run --volume
docker run --it
docker run --p
docker run --env

docker ps

・起動中のコンテナを表示
・停止中のコンテナは表示されない

docker ps
docker ps -a //停止中のコンテナも表示

docker start/stop/restart

・コンテナ一つを操作
・いづれも削除はしないので残る

docker start

docker stop

docker restart

docker exec

・起動中のコンテナに入らずコマンドを実行できる

docker exec コンテナ名 コマンド

起動中のコンテナに入らずコマンドを実行

docker exec  mycentos cat /etc/redhat-release

コンテナに入る場合は「--it」オプションを付ける

docker exec -it コンテナ名 /bin/bash

docker exec -it //オプション

docker exec -it mycentos /bin/bash //起動中のコンテナに入る

docker rm

・停止中のコンテナを削除(コンテナのデータも消える)

Exaple

docker rm コンテナ名 

docker rm mycentos

※起動中のコンテナを削除する場合は「-f」オプションをつける

Exaple

docker rm -f

docker rm -f mycentos

docker images

・ローカルにあるimageを全て表示

Exaple

docker images

docker rmi

・dockerイメージを削除する
・起動中コンテナのイメージは削除できない
・dockerイメージは依存関係があるので、ベースイメージは削除できない(削除するにはイメージを使用しているコンテナを削除しないといけない)

docker rmi イメージ指定

Exaple

docker rmi feb5d9fea6a5

コンテナで使用しているイメージがある状態で削除しようとした時のエラー

Error response from daemon: conflict: unable to delete feb5d9fea6a5 (must be forced) - image is being used by stopped container ac6b3993d772

docker build

・dockerfileからイメージを生成

docker build Dockerfilesパス

Exaple

docker build /psth/to/dockerfiles

docker cp

・コンテナとホストマシンでファイルのやりとりを行うコマンド
・ログファイルや設定ファイルの取り出しや入力で使用する

ホスト→コンテナへコピー

docker cp ホストファイルのパス コンテナ指定:コンテナのパス

Example

docker cp command/sample.txt mycentos:/opt
コンテナ→ホストへコピー

docker cp コンテナ指定:コンテナファイルのパス ホストのパス

Example

docker cp mycentos:/opt/container.txt /Users/naoki/Desktop/Udemy_Docker

docker logs

dockerコンテナのログ出力
・原因不明のコンテナ停止
・アクセスログなど

docker logs コンテナ名

Example

docker logs mycentos

※リアルタイムログは「-f」オプションをつける

docker logs -f mycentos

ストレージの永続化方法

・ホストとコンテナでフォルダを共有する

docker run -v ホストのパス:コンテナのパス イメージ名

Example

docker run -v /User/username/path/to/folder:/ver/www/html 

Dockerfile

・dockerイメージをコード化したもの
・ファイルを読むと構成がわかる
・オリジナルイメージを作成できる
・設定ファイルなども変更できる

FROM:ベースとするDockerイメージを指定

mysql:8.0

RUN:OSのコマンドを実行する際に使用

RUN apt-get update -y

ADD:コンテナへのコピー(COPYと類似)
COPY:ファイルをイメージに追加する

COPY /path/to/hostfile /path/to/containerfile

COPY my.conf /etc/mysql/conf.d

CMD:コンテナ起動時に実行するコマンドを記述

ENV
・環境変数を設定(DBユーザー、動作環境(localなど))
・直接書き込みなので固定値(ユーザーによって変えれない)

ENV MYSQL_USER = root
ENV MYSQL_DATEBASE = root
ENV MYSQL_ROOT_PASSWORD = root
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?