LoginSignup
0
2

More than 5 years have passed since last update.

チュートリアルで学ぶDocker

Posted at

概要

Dockerについて知識としてわかった状態から、
チュートリアルで手を動かすことでDockerを使えるようにする。

基礎的な部分は良スライドがいくつもあるため、そちらでざっと勉強すると良い。
https://www.slideshare.net/zembutsu/practical-docker-and-arukas-osc2016-nagaoka
とか。

対象

幾つかのスライドでDockerのことをなんとなくわかったので
手を動かしながら学びたい人

PLAIDさんのDockerチュートリアル

docker 関連のスライドを幾つか見た上で、手を動かしながら覚えられるので
良かった。
https://tech.plaid.co.jp/tutorial-for-docker-beginners/
https://github.com/otolab/plaid-study-20180605

基本的にはリポジトリをクローンしてきて、参照できるスライドをもとに
チュートリアルを進める。

git clone https://github.com/otolab/plaid-study-20180605.git
cd ./plaid-study-20180605/slide
docker-compose up -d

起動後、http://localhost:82/ にアクセスし、指示通りに進める。

wordpressをdockerで

ざっくり使い方を覚えたら、実際に身近な題材で使ってみる。

docker-compose.yml
version: '3'

services:
  wordpress:
    image: wordpress

    links:
      - mysql:mysql
    #他の初期値は https://hub.docker.com/_/wordpress/ を参照
    environment:
      MYSQL_ROOT_PASSWORD: "test"

    ports:
      # ホストのポートは何でも良いが、使ってないところで。
      - 81:80

  mysql:
    image: mysql

    environment:
      #.envファイルなどを指定し管理外にしておくのが無難だが、テストのためわかりやすさ優先
      MYSQL_ROOT_PASSWORD: "test"
      #databaseを生成して起動
      MYSQL_DATABASE: "wordpress"

    volumes:
      - wordpress-data:/var/lib/mysql

# hostにvolumeとして定義したい場合
# https://docs.docker.com/compose/compose-file/#volume-configuration-reference
volumes:
    wordpress-data:

公式イメージの説明部分に、パラメータを指定するとどうなるかなど説明が書いてあるので、それをちゃんと読んでおくと困ったときに助かります。

https://hub.docker.com/_/wordpress/
https://hub.docker.com/_/mysql/

ymlの内容を一つ一つ理解しつつ、起動

$ docker-compose up -d

データベースのホスト名に注意

settings.png

wordpressのサーバからみて、dbのホストをdocker-compose.ymlでmysqlとして定義しているため、
localhostではなく、mysqlと指定する。

後処理

volumeの整理

いろいろチュートリアルをやっていると、
hostのvolumeが汚れるので不要なものをすべて削除
$ docker volume prune

参考
 https://docs.docker.com/engine/reference/commandline/volume_prune/

次は公式のトレーニング動画があるのでやってみてまとめたい。
https://training.play-with-docker.com/

0
2
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
2