Dockerの勉強会に行ったので復習がてら。
仮想化技術の違い
Vmware、VirtualBox→ホスト型仮想化
Docker→コンテナ型仮想化
で、何が違うかというと、ホスト型はCPU、メモリ、OS、ミドルとマシン自体をエミュレート。
コンテナ型はミドルのみをエミュレートし、OS部分などはDocker実行マシンと共有する。
だから、超軽量なんだと。なるほど。
DockerのImageは、「https://hub.docker.com/」に入っていて、デフォルトでここを見に行っている。
インストール、設定
1 2 3 4 5 6 7 8 9 10 11 |
#インストール [root@docker ~]# yum -y install docker #バージョン確認 [root@docker ~]# docker --version Docker version 1.13.1, build 774336d/1.13.1 #systemd起動設定&起動 [root@docker ~]# systemctl enable docker Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service. [root@docker ~]# systemctl start docker |
myslqのダウンロード、コンテナ実行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
#myslq5.7をpull [root@docker ~]# docker pull mysql:5.7 #myslqをコンテナとして起動 rootユーザのパスワードをpassword、コンテナ名をmysql5.7 [root@docker ~]# docker run -d -e MYSQL_ROOT_PASSWORD=password --name mysql5.7 mysql:5.7 #起動中コンテナ一覧 [root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d2d2ad0d3a8a mysql:5.7 "docker-entrypoint..." 30 seconds ago Up 30 seconds 3306/tcp mysql5.7 #イメージ一覧 [root@docker ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/mysql 5.7 5195076672a7 11 days ago 371 MB #mysqlコンテナへログイン 「d2d2ad0d3a8a」はdocker psで表示されるコンテナID #ログイン成功するとプロンプトが変化 [root@docker ~]# docker exec -it d2d2ad0d3a8a /bin/bash root@d2d2ad0d3a8a:/# #pwd、ls実行してみたり root@d2d2ad0d3a8a:/# pwd / root@d2d2ad0d3a8a:/# root@d2d2ad0d3a8a:/# ls bin docker-entrypoint-initdb.d home media proc sbin tmp boot entrypoint.sh lib mnt root srv usr dev etc lib64 opt run sys var root@d2d2ad0d3a8a:/# #mysql入ってみたり root@d2d2ad0d3a8a:/# mysql -uroot -ppassword mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.21 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) mysql> #コンテナから抜けるときはexit root@d2d2ad0d3a8a:/# exit exit [root@docker ~]# |
コンテナ停止、イメージ削除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
[root@docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d2d2ad0d3a8a mysql:5.7 "docker-entrypoint..." 4 minutes ago Up 4 minutes 3306/tcp mysql5.7 #コンテナ停止 [root@docker ~]# docker stop d2d2ad0d3a8a d2d2ad0d3a8a #コンテナ削除 [root@docker ~]# docker rm d2d2ad0d3a8a d2d2ad0d3a8a #-aで起動有無にかかわらない全コンテナ一覧表示 [root@docker ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES #イメージ一覧 [root@docker ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/mysql 5.7 5195076672a7 11 days ago 371 MB #イメージ削除 [root@docker ~]# docker rmi 5195076672a7 Untagged: docker.io/mysql:5.7 Untagged: docker.io/mysql@sha256:691c55aabb3c4e3b89b953dd2f022f7ea845e5443954767d321d5f5fa394e28c Deleted: sha256:5195076672a7e30525705a18f7d352c920bbd07a5ae72b30e374081fe660a011 Deleted: sha256:bc52f6d08bc65c22baab4384ae534d4c5ba8c988197de49975e0a0f78310dd89 Deleted: sha256:b2590548a0917767b420cf20d0cef3aae8912314de216f624c0840f3ad827aa7 Deleted: sha256:756d63a7d5896b52d445ea84ee392cb08a7c119322cfcdfed6303de1ed0d0eab Deleted: sha256:8e4736576db75536185beba95c5877deeb3915740688cbbc17fe04aed3632282 Deleted: sha256:e6e6e1bb8a16eadbe6628770767615fbc8d67bf11dde69a902116efe847baa7e Deleted: sha256:080b6c4ec1d55d91a7087e12ae3bd4df252148d94f9911209e0a83d50dc63784 Deleted: sha256:58b97da9f98f75af01ae59c3cb1fdd07a07297015459f3f9f88b140699b29147 Deleted: sha256:3918448e7fe95f36f67a55c938559bab787249b8fa5c7e9914afd46994d045b0 Deleted: sha256:fac8373d1ec4f5bb6c13f12170f558edc3cfbfe8215ae3d1c869940401bc14cf Deleted: sha256:130f3e567e288fdbbc3ae7cd7aa6c8b3d952bebd3eae58f0a7da93acbb22a258 Deleted: sha256:3358360aedad76edf49d0022818228d959d20a4cccc55d01c32f8b62e226e2c2 [root@docker ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE [root@docker ~]# |