# Docker の基本的な使い方

Docker 無償と有償の違い
2013 年に Docker 誕生し、2017 年に CE(コミュニティエディション)と EE(エンタープライズエディション)バージョンをリリース。CE は無償で利用できるが、EE は商用版で有償サポートが付きます。

Docker 用途

  • 環境統一、誰でも同じ環境が作業できる
  • 作成した環境を配布できる
  • スクラップ&ビルドが容易にできる

基本的な使い方

docker run --name some-nginx -d -p 8080:80 nginx
# mysqlコンテナ建てる
docker run --name db-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:5.7

# wordpressと連携コンテナ
docker run --name example-wordpress -e WORDPRESS_DB_PASSWORD=my-secret-pw --link db-mysql:mysql -d -p 8080:80 wordpress

# よく使うコマンド

# イメージ取得
docker pull <Dockerイメージ名>
# イメージ一覧
docker images

# コンテナ一覧
docker ps -a

# イメージ削除
docker rmi <Dockerイメージ名>
docker rmi <DockerイメージID>

# ホストからコンテナにファイルコピー
docker cp <ホスト側のファイル> <コンテナ名>:<コンテナ内のコピー先ディレクトリ>
docker cp <コンテナ名>:<コンテナ内のコピー元ファイル> <ホスト側のコピー先ディレクトリ>

# コンテナにログイン
docker exec -it <コンテナ名> bash

# コンテナからDockerイメージ作成
docker commit <コンテナ名> <作成するDockerイメージ名>

# コンテナ起動、停止、削除
docker start <コンテナ名・ID>
docker stop <コンテナ名・ID>
docker rm (-f) <コンテナ名・ID>

# Dockerネットワーク作成
docker network create <ネットワーク名>
docker network ls

# Dockerfile を使用して Docker イメージを作成

FROM centos:7
RUN yum install -y java
CMD ["/bin/bash"]

# 参考

さくらナレッジ Docker 入門 (opens new window)
とほほ Docker (opens new window)
Docker コマンドライン リファレンス (opens new window)
Docker run リファレンス (opens new window)
Dockerfile リファレンス (opens new window)
Docker コンテナ・ネットワークの理解 (opens new window)

2021-05-12
  • docker
  • server

関連記事

積水ハウス SQL インジェクション攻撃による個人情報漏洩
ZeroSSL で無料 SSL できるけど Let's Encrypt と比較
ジェネレーティブ AI と大規模言語モデル(LLM)を学ぶためのリソース
XZ Utils 事件対応
Homebrew で Docker Desktop を再インストールエラー
Ubuntu で Web サーバーを構築する手順
Docker port error で起動できない
メールサーバー移行と POP & IMAP 設定
Windows の WSL Ubuntu で Docker を使う方法
Docker compose で LAMP 環境作成
Docker Supervisor 使ってバッチ処理
よく使う WSL コマンド
自宅サーバー構築!  Nextcloud で NAS クラウドストレージ
no such file or directory: /usr/share/zsh/vendor-completions/_docker
oh my zsh 使うべし
AWS SES メール開封確認  DB に集計
AWS CloudWatch ログ監視で Lambda 処理
Vim 操作とショートカット
DDNS 無料ダイナミック DNS サービス 4 つ
Nginx 基本設定
Docker WSL2 Laravel sail
Docker Compose
SPF メール送信なりすまし対策
Windows Mac Linux hosts ファイル場所
AWS Unresolved resource dependencies [AWSEBV2LoadBalancer] エラー
ディスク容量を確認する df コマンド
Laravel Address already in use の原因
content-security-policy 設定
AWS Elastic Beanstalk php.ini 設定変更
AWS Elastic Beanstalk 環境設定
AWS のタイムゾーンを UTC 協定世界時から JST 日本標準時に変更
Amazon DynamoDB 制限調査
AWS 504 Gateway Timeout エラー対応
Shell と Bash のいろいろ
Mac ターミナル SSH 接続設定
Elastic Beanstalk \$\SERVER['REMOTEADDR'] 取得できない
crontab 設定いろいろ
AWS EC2 の amazon-linux-extras の話
デプロイツール Capistrano
解決! xserver php バージョンアップした時に ssh 環境に反映されない
youtube 見れるように vpn サーバー建ててみた
xserver に vim インストール
xserver に nodejs インストール
レンタルサーバーなら xserver おすすめ理由
Docker command でドッカー練習する時のメモ
Windows10 Home に Docker 入れた時のメモ
Centos7 Webserver 構築の時のメモ