「仮想サーバ/docker/基本」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==macにdockerをインストール== docker for macをインストール https://docs.docker.com/docker-for-mac/ (Docker Toolboxは古いらしい) https://www.docker.c...」) |
(→docker for macとdocker toolboxの違い) |
||
行10: | 行10: | ||
==docker for macとdocker toolboxの違い== | ==docker for macとdocker toolboxの違い== | ||
docker for macはdocker-machineが必要ないのでvirtualboxも必要なくなる | docker for macはdocker-machineが必要ないのでvirtualboxも必要なくなる | ||
+ | |||
+ | ==boot2dockerの場合dockerに入った時こんな感じ== | ||
+ | <pre> | ||
+ | ## . | ||
+ | ## ## ## == | ||
+ | ## ## ## ## ## === | ||
+ | /"""""""""""""""""\___/ === | ||
+ | ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ | ||
+ | \______ o __/ | ||
+ | \ \ __/ | ||
+ | \____\_______/ | ||
+ | _ _ ____ _ _ | ||
+ | | |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __ | ||
+ | | '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__| | ||
+ | | |_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ | | ||
+ | |_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_| | ||
+ | </pre> | ||
==インストール確認== | ==インストール確認== |
2017年4月6日 (木) 00:22時点における版
目次
- 1 macにdockerをインストール
- 2 docker for macとdocker toolboxの違い
- 3 boot2dockerの場合dockerに入った時こんな感じ
- 4 インストール確認
- 5 vm作成
- 6 vm一覧
- 7 vm起動
- 8 vm接続
- 9 vm停止・削除・ip
- 10 docker仮想イメージ検索
- 11 dockerイメージ取得(centos6.7)
- 12 取得したイメージの確認
- 13 イメージの削除
- 14 コンテナを作成
- 15 コンテナ起動&接続
- 16 コンテナの確認
- 17 コンテナの削除
- 18 docker pullでDownloading...のまま止まった時
- 19 docker内のapacheでphp7を動作させる
- 20 docker内でweb_server動作確認
- 21 iso場所
- 22 参考
macにdockerをインストール
docker for macをインストール https://docs.docker.com/docker-for-mac/
(Docker Toolboxは古いらしい) https://www.docker.com/products/docker-toolbox
(boot2dockerは非推奨らしい)
docker for macとdocker toolboxの違い
docker for macはdocker-machineが必要ないのでvirtualboxも必要なくなる
boot2dockerの場合dockerに入った時こんな感じ
## . ## ## ## == ## ## ## ## ## === /"""""""""""""""""\___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\_______/ _ _ ____ _ _ | |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __ | '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__| | |_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ | |_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
インストール確認
$ docker -v Docker version 1.10.0, build 590d5108 $ docker-machine -v docker-machine version 0.6.0, build e27fb87
vm作成
defaultという名前でvmが起動する(virtualbox用)
docker-machine create --driver virtualbox default
vm一覧
$ docker-machine ls default * virtualbox Running tcp://192.168.99.100:2376 v1.10.0
vm起動
docker-machine start default
vm接続
docker-machine ssh default
vm停止・削除・ip
docker-machine stop default # 停止 docker-machine rm default # 削除 docker-machine ip default # ip (192.168.99.100)
docker仮想イメージ検索
centosの場合
$ docker search centos NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 1911 [OK] jdeathe/centos-ssh CentOS-6 6.7 x86_64 / SCL/EPEL/IUS Repos /... 15 [OK] jdeathe/centos-ssh-apache-php CentOS-6 6.7 x86_64 / Apache / PHP / PHP M... 13 [OK] padster83/centos7-php7-laravel5 centos7 php7 and larvel5.1 4 [OK]
debianの場合
$ docker@default:~$ docker search debian NAME DESCRIPTION STARS OFFICIAL AUTOMATED debian Debian is a Linux distribution that's comp... 1892 [OK]
debian&php&nginxの場合
docker search debian/php/nginx NAME DESCRIPTION STARS OFFICIAL AUTOMATED pschmitt/owncloud Reasonably configurable Docker image for t... 21 [OK]
dockerイメージ取得(centos6.7)
dockerにログインしてから
$ docker pull jdeathe/centos-ssh Using default tag: latest latest: Pulling from jdeathe/centos-ssh a3ed95caeb02: Pull complete 3b231ed5aa2f: Pull complete 739732e8a1eb: Pull complete 4748cf13cce1: Pull complete b43cafb7f42b: Pull complete ecc6934ef96a: Pull complete d258b8324b77: Pull complete 0bf7d359e07c: Pull complete 34a742724dd4: Pull complete 646a068632d8: Pull complete a9397714f8e2: Pull complete 4b0007b85fa0: Pull complete 40cbdf152dd2: Pull complete a9a0656572df: Pull complete Status: Downloaded newer image for jdeathe/centos-ssh:latest
取得したイメージの確認
docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 61b442687d68 6 weeks ago 196.6 MB jdeathe/centos-ssh latest 09cc921e8147 6 days ago 253.3 MB
イメージの削除
docker rmi 61b442687d68
コンテナを作成
docker run -d -it --name web1 jdeathe/centos-ssh:latest /bin/bash
80portも開放したい場合はこちら
docker run -d -it --publish 80:80 --name web1 jdeathe/centos-ssh:latest /bin/bash
起動ではなく生成なので注意。何度もrunすると幾つもコンテナが生成される。
nameにweb1といれたが指定しないとランダムで勝手に名前がつく。
コンテナ起動&接続
docker start web1 docker attach web1
コンテナの確認
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e831d68bfbe7 centos:latest "/bin/bash" 20 minutes ago Exited (0) Less than a second ago 443/tcp, 0.0.0.0:50080->80/tcp drunk_ride 51930183904 centos:latest "/bin/bash" 18 minutes ago Exited (0) Less than a second ago web1
docker start xxxしたものだけPORTSが割り当てられる
コンテナの削除
docker rm e831d68bfbe7
削除できない場合は以下コマンドで強制的に削除してdockerを再起動
docker rm -f e831d68bfbe7
docker pullでDownloading...のまま止まった時
”docker-machine stop"で停めてdocker-machineを再作成する
docker内のapacheでphp7を動作させる
$ docker-machine ip #ipを確認しておく(192.168.99.100) $ docker pull miyamotota/php7-centos67 # php7付きのimageを持ってくる $ docker run -d -it --publish 80:80 --name webphp7 miyamotota/php7-centos67:latest /bin/bash # 起動&80port開放 [root@8ff8c5a8cb27 /]# yum install httpd [root@8ff8c5a8cb27 /]# /etc/rc.d/init.d/httpd start
ローカルマシンからhttp://192.168.99.100へアクセスすると画面が開く
再接続の際は以下で接続できる
$ docker start webphp7 $ docker attach webphp7
docker-machineを複数作る&一部削除するとipが変化するので注意
docker内でweb_server動作確認
$ ip addr show | grep inet inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host inet 172.17.0.2/16 scope global eth0 inet6 fe80::42:acff:fe11:2/64 scope link $ wget -q -O - http://172.17.0.2/
iso場所
/Users/user1/.docker/machine/machines/dev/boot2docker.iso
参考
https://gist.github.com/tcnksm/7700047