Gunma.web #26 の講演資料です。 各種コマンドについての補足資料は下記URLをご覧下さい。 http://qiita.com/Wslash/items/941697bf0fcd3213e7dd
エバンジェリストチーム 横田真俊(@Wslash)さくらインターネット株式会社初心者向けDockerデモ ~ Gunma.web版 ~はじめて触るDocker入門2017/01/21
View Slide
自己紹介氏名横田真俊(@Wslash)「さくらのインターネット」のエバンジェリスト 兼 さくらのクラウド企画担当です。年に50回ほどのセミナーやハンズオンなどを担当しています。出身高校は高崎北高校、出身中学は中尾中です。2
他にもこんな本を書いておりますインフラエンジニア向けの本も書きました。3
商 号 さくらインターネット株式会社本 社 所 在 地 大阪市中央区南本町一丁目8番14号設 立 年 月 日1999年8月17日(サービス開始は1996年12月23日)上 場 年 月 日2005年10月12日(マザーズ)2015年11月27日(東証一部へ市場変更)資 本 金 8億9,530万円従 業 員 数 361名(連結)(※2016年6月末日現在)会社プロフィール会社概要インターネットインフラの提供を事業ドメインとして、大阪、東京、北海道の3都市に5つのデータセンターを展開1996年12月に現社長の田中邦裕が、舞鶴高専在学中に学内ベンチャーとして創業。1999年8月に株式会社を設立。10月には、第1号となるデータセンターを大阪市中央区に開設。2005年10月に東京証券取引所マザーズ市場に上場。2011年11月、北海道石狩市に国内最大級の郊外型大規模データセンターを開設。石狩データセンター開設2011東証マザーズ上場200519961999 ・株式会社を設立2015年11月に東京証券取引所市場第一部に市場変更。東証一部に市場変更2015さくらインターネット創業・最初のデータセンター開設5
(C) Copyright 1996-2017 SAKURA Internet Inc 5
既存サービスの売り上げ比率6
ここ5年で「VPS・クラウド」が売り上げ比率1位に7
直近のさくらインターネットのトピック8
「さくらのレンタルサーバ」12周年で契約件数が40万件を突破9
さくらのレンタルサーバでグループウェア提供(β)10
11
すべてを自社でやるのは現実的でしょうか?ネットワークとデータをやり取りしたいだけなのに、やらなければならないことが多すぎる通 信 ネ ッ ト ワ ー ク D B ミ ド ル A P I
2017/1/21 (C) Copyright 1996-2016 SAKURA Internet Inc 13既存の事業領域/スキルセットの大幅な変更なくモノ/サービスづくり、連携に注力可能さくらのIoT Platformが実現したいこと通信⇔データ連携隠蔽
2017/1/21 (C) Copyright 1996-2017 SAKURA Internet Inc 14さくらインターネット世の中のIoT プラットフォーム企画・アイディアモノ(製造)センサーデータの送信手段安全な通信経路プラットフォーム(基本機能)管理UI連携API「データを迎えに行く」という発想モノに組み込めば、電源を入れるだけで利用可能接続知識や現地の有線/無線LAN環境も不要さくらのIoT Platform の特徴
2017/1/21 (C) Copyright 1996-2017 SAKURA Internet Inc 15単体方式:SCM-LTE-beta定価9,960円100万回プラットフォームとデータ送受信可能なポイント※付きRP=RelationPointさくらのIoTプラットフォーム利用時に消費されるポイント1分間に1つデータ(RM)をプラットフォームとやり取りすると約2年間利用することが可能さくらの通信モジュール
2017/1/21 (C) Copyright 1996-2017 SAKURA Internet Inc 16定価8,000円ブレイクアウトボード(検証ボード)SCO-BB-01定価5,000円AruduinoシールドボードSCO-ARD-01さくらの通信モジュールオプション
2017/1/21 (C) Copyright 1996-2016 SAKURA Internet Inc 17β提供記念キャンペーン
2017/1/21 (C) Copyright 1996-2016 SAKURA Internet Inc4,980円単体方式SCM-LTE-beta2,500円4,000円AruduinoシールドボードSCO-ARD-019,960円5,000円8,000円さくらの通信モジュール及びオプション半額100万回プラットフォームとデータ送受信可能なポイント※付き88ブレイクアウトボード(検証ボード)SCO-BB-01
Dockerとは何か?19
2
2「コンテナ」と仮想化の違い
今までの仮想化(1) 「ホストOS仮想型」22ホストOSの上で「仮想化ソフト」を動かすタイプホストOSとアプリを共存できるのでPCからの個人利用の形で多いが、ホストの負荷が大きいホスト形仮想化ソフト(VirtualBOXなど)OS (1) OS(2) OS(3)アプリ アプリ アプリホストOS(Windows/Linuxなど)アプリ
今までの仮想化(2) 「ハイパーバイザー型」23ホストOSの代わりに「ハイパーバイザー」が仮想サーバを制御する。ホストサーバ全体を仮想化で利用するため、ホストOSを経由しないためホストOS型よりレスポンスが良いハイパーバイザー(VMWareなど)OS (1) OS(2) OS(3)アプリ アプリ アプリ
「コンテナ」24OSの代わりに各コンテナがアプリを稼動させます。今までより一番ホストマシンの処理負荷が低いコンテナ管理ソフトウェア(Dockerなど)コンテナ(1) コンテナ(2) コンテナ(3)アプリ アプリ アプリホストOS(Linux)アプリ
25Docker EngineLinux Kernel・namespaces・cgroupsLXC libcontainer runCcontainerdv0.9~v1.11~Version 7 Unixchrootjaildockerdv1.12~デーモンライブラリランタイムdocker daemon・SELinux・capabilities… etcDocker: the container enginev1.11~カ ー ネ ルネ ー ム ス ペ ー スシ ー グ ル ー プエ ス イ ー リ ナ ッ ク スケ ー パ ビ リ テ ィエルエックスシー リ ブ コ ン テ ナ ラ ン シ ード ッ カ ー デ ー モ ンコ ン テ ナ デ ィ ード ッ カ ー デ ィ ード ッ カ ー エ ン ジ ンオ ー プ ン コ ン テ ナイ ニ シ ア テ ィ ブ
2何がうれしいのか?
よく言われるDocker(コンテナ)のメリット•処理速度が速い→ OSやハードウェアを仮想化していないためオーバーヘッドが少なく処理能力が高い•メモリやディスクの消費量をおさえられる→ それぞれにカーネルを持たないためメモリ/ディスクの消費量をおさえられる。•ポータビリティ→ 環境を意識せず使える2
DockerのWebページに行くと…2DockerのWebページにある「BUOLD,SHIP,RUN」とは?
3デモ
31$ dockerDocker HubNginxBuild RunShip開 発 ・ 構 築 移 動 実 行今日やること
• 基本操作とコンテナ作成・デプロイ方法を習得321. さくらのクラウド にログイン2. 仮想サーバ(CentOS 7.2)の起動3. Docker Engine のセットアップ4. docker コマンドの基本操作を学ぶ5. Nginx イメージを作成6. Docker Hub にログイン7. Docker Hub に push8. Arukas に Nginx をデプロイ$ dockerDocker HubNginxデモの流れ
Dockerをインストールする33
Dockerをインストールするサーバについて3今回はCentOS 7系でインストールします今日の資料は別途、公開いたします2万円クーポンを配るのでそれで復習できます
サーバにDockerをインストールする3とりあえず「yum -y update」でパッケージ情報を最新にするyum -y update
サーバにDockerをインストールする3「curl -fsSL https://get.docker.com/ | sh」とコマンドを入れるとDockerのインストールがはじまります。curl -fsSL https://get.docker.com/ | sh
Dockerを開始する3サービスを有効します。systemctl enable docker.service
Dockerを開始する3「systemctl start docker」とコマンドを入れるとDockerが動きますsystemctl start docker
Dockerがインストールされているか確認3「docker version」と入力してDockerのバージョンが表示されれば、Dockerが正常にインストールされています。docker version
4コンテナを起動する「docker run」
docker run■docker run コマンド→ 指定したイメージのコンテナを起動する■構文→ docker run イメージ [オプション][コマンド][引数]■オプション→ -d バックグランドで実行→ -i コンテナの標準入力を開く→ -t ttyを確保する→ -p ポートフォワード4
Hello World4ちゃんとDockerが動くか「hello world」を動かしてみたいと思います。上記のコマンドを入力してください。docker run hello-world
docker run hello-worldの結果4「hello world」の入力が終わると「docker run –it ubuntu bash」を試してみろ、と言われているので、これを入力してみましょう。
ubuntuを入れてみる4Dockerの上でUbuntuを入れて、コマンド入力ができるようにしてみる。「-it」で、コンテナの中で入力できるようになる。docker run -it ubuntu bash
ubuntuを入れてみる4上記コマンドでコンテナで作られたUbuntuのバージョンがわかりますcat /etc/issue
Dockerを利用することでCentOS上でubuntuを利用することができます。ただし、このubuntuには、ほとんどコマンドが入っていません。例えば「curl ifconfig.me/ip」を叩くと、なにも表示されないと表示されます。4
4
起動したubuntuにcurlを利用できるようにする4「apt-get update」を叩いた後「apt-get install curl」で「curl」をインストールしてください。インストール中、色々と聞かれますがとりあえずyを押して下さい。apt-get updateapt-get install curl(1)(2)
Curlがインストールされていることの確認4「curl ifconfig.me/ip」でIPを表示してみるcurl ifconfig.me/ip
作成したコンテナから出る5「exit」をコマンドを叩くとコンテナから出て、このコンテナが止る。コンテナが止ると今までやった作業(apt-getとか)は保存されない。exit
再度、コンテナを動かすと…5再度コンテナを起動して「curl ifconfig.me/ip」を入力してください。これを入力しても、先ほどのように実行されないはずです。docker run -it ubuntu bashcurl ifconfig.me/ip(1)(2)
コンテナについて•exitするだけで、今までの動作が消えてしまうので、このままだと使えないです。•次はバックグランドでDockerのコンテナを利用する方法について解説します。5
5バッググランドでコンテナを動かす
今の時刻を毎秒表示するコンテナを起動する5上記のコンテナを起動すると、時刻を1秒ごとに表示するコンテナが表示される。しばらく動かしてみて「ctrl + C」で止めてください。docker run jpetazzo/clock
さきほどのコンテナをバックグランドで動かす5コンテナをバックグランドで動かすにはrunコマンドに「-d」をつける。上記のコマンドを入力すると、先ほどのように時刻は表示されずバックグランドで動いており、ログは記録されている。docker run -d jpetazzo/clock
5docker psでコンテナを確認する
docker ps■docker ps コマンド→ コンテナIDを確認するためコマンド。これでわかるものは・コンテナのID・コンテナがどのイメージから作られたのか?・コンテナが動いてどのぐらい経過したのか?■オプション→ -l 直近(latest)のコンテナの情報を表示→ -q コンテナのショートIDのみ表示→ -a 停止しているコンテナも含め全て(all)表示5
docker psでコンテナの確認5docker psを入力すると、現在動いているコンテナの情報が見られる現在のところ起動しているコンテナは「jpetazzo/clock」のみのはずdocker ps
docker ps -aで今まで起動したコンテナを確認5docker ps –aを入力すると今まで起動したコンテナが確認できる。docker ps -a
docker psのオプション6「docker ps -l」で直近に操作したコンテナを表示し「docker ps -q」でコンテナのショートIDが表示される。docker ps -ldocker ps -q(1)(2)
6docker logsでコンテナのログを確認する
docker logs■docker logs コマンド→ コンテナの標準出力の内容をコンテナ外から確認する■オプション→ -tail ログの最後数行が見られるようになる→ -follow リアルタイムでログが確認できる。6
docker logs6「docker logs(コンテナのID)」を入力すると、コンテナの標準出力が見られる。先ほどバックグランドで動かした「 jpetazzo/clock 」のコンテナIDを入力してみましょう。docker logs (コンテナのID)
docker logsのオプション6「-- tail」オプションを使うことで、ログの最後数行が見られるようになる。例えば、(1)のコマンドはログの最後3行を出すコマンドとなる。docker logs --tail 3 (コンテナのID)
リアルタイムでログを見る6docker logs --tail 1 --follow (コンテナのID)Unixコマンドのtail -fのようにfollowオプションをつけることでリアルタイムでログを確認することができる。上記のコマンドを入力するとリアルタイムでログが表示される。止めるには「Ctrl + C」で
6docker kill、docker stopでコンテナを止める
コンテナの停止6「-d」で動作したコンテナを止めるにはkillかstopを使う。今回はkillコマンドで、先ほどのコンテナを止めてください。docker kill (コンテナのID)docker stop (コンテナのID)(1)(2)
停止したコンテナを確認する6「docker ps」で先ほど止めたコンテナのIDが無いことを確認してください「docker ps –a」で止めたコンテナも確認できます。docker psdocker ps -a(1)(2)
Docker上でGhostをインストールする69
70これだけではつまらないのでアプリを入れてみましょう
Ghostとは?71「Ghost」は最近、人気が出ているNode.js製の軽量ブログエンジンです。今回はDockerを利用して、コマンド1発でインストールします。
通常でGhostをインストールするのに必要なもの72• Node.jsとnpm• ApacheとかのWebサーバ• その他、色々「Ghost」をインストールして利用するには上記のような物を色々とインストールする必要があり面倒です。
DockerからGhostを入れる73Ghostを80番ポートで利用できるようにします。元々Ghostは2368番ポートで動いているので80番ポートとマッピングさせます。docker run -p 80:2368 -d ghost
インストールが終わったらIPアドレスをいれる74インストールが終わったら「(IPアドレス)」をブラウザで入力してください。上記のような「画面」が表示されます。「(IPアドレス)/admin」でGhostのセットができます。
docker psでコンテナIDを調べる75起動を確認したら、このコンテナを止めてみましょう。コンテナの止め方は「docker stop (コンテナのID)」で止りますので「docker ps」でコンテナIDを調べます。docker ps
docker psでコンテナIDを調べる76「docker ps」を入力して「CONTANER ID」を確認する。
docker psでコンテナIDを調べる77「docker stop (コンテナのID)」を入力すると、ghostのコンテナが止ります。(先ほどの例だと07a4e04f6418となります。)docker stop (CONTANER ID)
nginx dockerイメージの作成78
79ここからはnginxを例にして、Dockerイメージの作成を行います
Dockerを利用してnginxを起動する80「nginxを立ち上げるdocker run -itd -p 80:80 nginx:latest
Dockerを利用してnginxを起動する81起動が出来たらブラウザからIPアドレスを入力し、上記の画面が表示されるのを確認する
docker exec■docker exec コマンド→ 実行中のコンテナでコマンドを実行します。■構文→ docker exec [オプション] コンテナ コマンド [引数...]■オプション→ -d コマンドをバックグラウンドで実行8
docker exec コマンドで bash の追加プロセスを実行83docker exec コマンドで bash の追加プロセスを実行。docker exec -it $(docker ps -ql) /bin/bash
ps -ef コマンドで、nginx コンテナの中での操作を確認。84コンテナの中でnginxが動いているのを確認するps -ef
85上記のようになっている事を確認
Nginx のドキュメント・ルートにある index.html を書き換えます。86Nginx のドキュメント・ルートにある index.html を書き換えhello worldが表示されるようにしますecho 'hello world' > /usr/share/nginx/html/index.htmlcat /usr/share/nginx/html/index.html
ページの表示確認87ブラウザで表示を確認します。画面に hello world が表示されます。
exitでbashを終了する88exitでbashを終了する。exit
89変更したnginxコンテナからイメージを作成してみましょう
Docker コンテナとDocker イメージの違い・「Docker run」をコマンドを叩くとDockerイメージからDocker コンテナが作られる・Dockerイメージは読み込みのみ可能(read-only)。変更はできない。・Dockerコンテナは、読み書きができるファイルシステム9
新しいイメージを作るには91・docker commit→ コンテナからDocker イメージを作る。・docker build→ Docker fileからDockerイメージを作る。・docker import→ Base imageからDockerイメージをつくる。
docker commit■docker commit コマンド→コンテナの変更を元に新しいイメージを作成■構文→ docker commit [オプション] コンテナ [リポジトリ[:タグ]]9
docker commitでイメージを作る93docker commit コマンドで mynginx:1.0 イメージを作成します。docker commit $(docker ps -ql) mynginx:1.0
docker images■docker images コマンド→ローカルにあるイメージを一覧表示します。■構文→ docker images [オプション] [リポジトリ[:タグ]]9
docker images で利用してきたイメージを見てみる95docker images コマンドで、先ほど作ったイメージ「mynginx:1.0」が作成されたのを確認します。docker images
docker images で利用してきたイメージを見てみる96dockerdocker run -d -p 8080:80 mynginx:1.0docker run -d -p 8080:80 mynginx:1.0
curlコマンドからちゃんと起動しているか確認をする97curl コマンドで、コマンドライン上でポート 8080 を開きます。(ブラウザでポートを指定して確認しても良いです。)curl http://localhost:8080
Dockerfileを利用して、Dockerイメージを作る98
自分が使用したイメージの表示99このコマンドを入力すると、過去に利用したDockerイメージが表示されますdocker images
100Dockerfileを利用して、Dockerイメージを作る。
Dockerfile?・DockerfileはDockerイメージを作るためのレシピのようなものです。・ Dockerfileは作成するDockerイメージの内容をテキスト形式で記述します。・作成したテキストファイルはdocker buildコマンドで読み込んでDockerイメージの作成を実行します。10
Dockerfileを書いてみる10作業用ディレクトリ mynginx を作成し、移動します。mkdir mynginxcd myimage(1)(2)
簡単なDockerfileを作る10次のコマンドを実行し、 Dockerfile を作成します。tee ./Dockerfile <<-'EOF'FROM nginx:latestRUN echo "hello world$(date)" >/usr/share/nginx/html/index.htmlEOF
docker build■docker build コマンド→ DockerfileからDockerイメージを作る■構文docker build –t :<タグ名>10
docker build105docker build コマンドで mynginx:1.1 イメージを自動作成します。docker build -t myimage .docker build -t mynginx:1.1 .
106Successfully built <イメージID>が出れば、イメージの作成成功
docker build107docker images コマンドで、イメージが作成されたのを確認します。docker images
docker build108作成した mynginx:1.1 イメージを使って、新しいコンテナを実行します。docker run -d -p 8888:80 mynginx:1.1
docker build109curl コマンドで、コマンドライン上でポート 8888 を開きます。curl http://localhost:8888
作成したDockerイメージをDocker Hubにアップロードする110
Docker Hubにアクセス11https://hub.docker.com/ からDocker IDを登録し、ログインします。
Docker Hub にログインします。112上記コマンドでDocker Hub にログインできます。docker login
docker tags コマンド113docker tags コマンドで mynginx:1.1 イメージに Docker Hub ID の情報を付けますdocker tag mynginx:1.1 <自分のID名>/mynginx:1.1
docker imges コマンド114docker images で確認します。先ほどタグづけしたイメージを確認いたします。docker images
docker Push コマンド115docker push コマンドでイメージを送信します。docker push <自分のID名/mynginx:1.1>
116コンテナ等をまとめて処理する
docker build117上記コマンドから実行しているコンテナをまとめて終了させられますdocker kill $(docker ps -q)
docker build118上記コマンドでコンテナ(コンテナ用のイメージ・レイヤとメタ情報)を削除します。docker rm $(docker ps -aq)
119不要なイメージの削除
docker images -q120docker images -q を実行すると、ローカルにあるイメージ ID を表示しますdocker images -q
docker images -q121docker images -q を実行すると、ローカルにあるイメージ ID を表示しますdocker images -q
docker rmi122docker rmi とdocker images –aqを利用して全てのイメージを削除します。docker rmi -f $(docker images -aq)
Docker HubにアップロードしたイメージをArukasで実行する123
ArukasとはDockerイメージをDocker最適化したArukasインフラで稼働12
12
126Arukasの利用方法
ログイン127https://app.arukas.io/から新規登録を行い、登録が完了したらログインをしてください
アプリの作成128ログインをしたら「新しいアプリケーションを作成」をクリック
12Imgesに「 /mynginx:1.1 」← 1.1 のタグを忘れずにPortに「80」を入力をして、一番下の「アプリケーションを作成」をクリックする
13ダッシュボードに戻り、作成したアプリの「起動ボタン」をクリックする。
起動状態13起動状態になったら「Endpoint」をクリックして、nginxが動いているか確認する
まとめ132
まとめDocker の基本コマンドをデモしました。Dockerを利用すると開発環境から本番環境への移動が便利です133
134ご静聴ありがとうございました。「さくらのクラウド 2万円クーポン」を配布いたします。今日の復習にご利用ください
13ご清聴ありがとうございましたhttp://cloud.sakura.ad.jp
おまけ
Dockerを利用してWordPressを構築する。137
Wordpressをインストールしてみる138上記のコマンドを入力すると、色々とダウンロードがはじまる。docker run wordpress
Wordpressをインストールしてみる139エラーが出てWordPressが起動できない、どうやらMySQLが必要な様子。というわけで、MySQLのコンテナを持ってくる。
MySQLイメージのダウンロード140「docker pull [イメージ名]」でイメージのダウンロードがはじまります。ちなみに「docker run [イメージ名]」をした時にローカルにコンテナイメージがないと自動的にダウンロードされますdocker pull mysql
MySQLの設定141わかりやすいように –eを利用することでMySQLのパスワードの設定が可能となります。(パスワード)には、任意のパスワードを入れてくださいdocker run --name mysql -e MYSQL_ROOT_PASSWORD=(パスワード)-d mysql
Wordpressの立ち上げ142上記のコマンドを入力するとWordPressが立ち上がります。「-- link」は、--link <連携したいコンテナ名>:<エイリアス名>オプションで新しいコンテナを起動すると,そのコンテナ内で連携したいコンテナのポート番号やIPを環境変数として利用できるという機能ですdocker run --name wordpress --link mysql:mysql -p80:80 wordpress
143インストールに成功するとこんな画面が出てきます。
ブラウザでIPアドレスにアクセス144
145「-d」を指定していないので「ctrl + c」を入力すると、このコンテナ自体も停止してしまいます。それでは、次はバッグランドでWordPressを起動してみましょう。ただし、同じ名前のコンテナ(--name以下)は作れないので、名前を変えてみましょう。
146Docker Compose
Docker Composeとは?147Docker Composeは、複数のコンテナから構成するサービスを従来よりも簡単に構築できるツールです。従来はコンテナを作成するには、いちいち「docker run」しなければならなかったのが、コマンド1発で複数のコンテナを利用したサービスを構築できます。
148Docker Composeを利用してRocket.Chatの環境を構築する
Docker composeのバイナリをセットする。149上記のコマンドを入力して、Docker Composeのバイナリをセットするcurl -Lhttps://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` >/usr/local/bin/docker-composechmod +x /usr/local/bin/docker-composecurl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-composecurl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
Docker composeがインストールされたか確認150「docker-compose version」を入力すると、Docker composeのバージョンが表示される、正しくインストールされれば、このコマンドでバージョン情報が表示される。docker-compose version
Docker-compose.yamlの作成151本来であれば、作業用のディレクトリの中に「docker-compose.yaml」を用意する必要があるのですが、今回は事前に私の方で作成したので、そちらをクローンしてください。クローンが終わったら「rocketchat」に移動します。git clone https://github.com/zembutsu/sakura-cloud-hands-on.gitcd sakura-cloud-hands-on/rocketchat
イメージを取得する152先ほど作成したディレクトリ「rocketchat」の中で「docker-composepull」を入力。Rocket.Chatに必要なイメージをダウンロードします。docker-compose pull
イメージを取得する153エラーが出ていなければ「docker images」を入力して「mongo」と「rocketchat/rocket.chat」と「rocketchat/hubot-rocketchat」のイメージを取得できているか確認をする。docker images
154エラーが出ていなければ「docker images」を入力して「mongo」と「rocketchat/rocket.chat」と「rocketchat/hubot-rocketchat」のイメージを取得できているか確認をする。# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEmongo latest 7f09d45df511 5 days ago 336.1 MBrocketchat/rocket.chat latest 30826dfbbfa6 2 weeks ago 332.4 MBrocketchat/hubot-rocketchat latest a727f5c88c43 5 weeks ago 800.5 MB
Composeを使って複数のコンテナを立ち上げる155イメージを取得できていれば「docker-compose up -d」を入力してRocket.chat起動に必要な複数のコンテナを立ち上げます。docker-compose up -d
「docker ps」を入力して動作を確認する156「docker-compose up -d」でコンテナを立ち上げた後「docker ps」で、正常に動作しているか確認する。docker ps
ブラウザで「IPアドレス」を入力する157正常に動作していれば、ブラウザに http://サーバのIPアドレス:3000/ を入力すれば、Rocket.Chat ログイン画面が表示されます。「新しいアカウントを登録」をクリック後、名前、メールアドレス、パスワードを入力します。
Wordpressの立ち上げ158上記のコマンドを入力するとWordPressが起動します。起動するのを確認したら、docker killで落としてみましょう。docker run --name wordpress2 -d --link mysql:mysql -p80:80 wordpress