036415 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

家studyをつづって

PR

プロフィール


kinada3

カテゴリ

日記/記事の投稿

バックナンバー

キーワードサーチ

▼キーワード検索

楽天カード

コメント新着

Bottega@ Re:LPIC1メモ2(06/16) 比較式の説明がない -leとか
Bottega@ Re:LPIC1メモ2(06/16) 仮想環境でのhwclockは?

フリーページ

ランキング市場

ニューストピックス

全3件 (3件中 1-3件目)

1

Docker

2019年02月15日
XML
テーマ:ubuntuでGOGO!(37)
カテゴリ:Docker
Dockerfileはコンテナイメージを自動作成する手順をまとめたファイル。
以下のようなコマンドを記載したファイル。

Dockerfileの主な命令
コマンド概要
FROM作成元のコンテナイメージを「リポジトリー:タグ名」で指定
MAINTAINERコンテナイメージ作成者の名前を記載
ENVコマンド実行時の環境変数を指定
RUN指定のコマンドを実行
ADDイメージ内にファイルを追加
EXPOSEコンテナ内のアプリケーションが使用するポート番号を指定
CMDコンテナ起動時に実行するコマンドを指定

Dockerfileを使用する際は、「Dockerfile」というファイル名のDockerfile本体と、イメージ作成に必要なその他のファイルを同じディレクトリに配置する。

Dockerfileのイメージは以下の通り

Dockerfileイメージ
#Dockerfile Sample

FROM centos:centos7
MAINTAINER enokinada

RUN yum -y install httpd
ADD index.html /var/www/html/index.html
CMD service httpd start && bash

Dockerfileを使ったイメージの作成
docker build -t Dockerfileのあるディレクトリパス






最終更新日  2019年03月03日 14時03分48秒
コメント(0) | コメントを書く
2019年02月11日
テーマ:ubuntuでGOGO!(37)
カテゴリ:Docker
Ubuntu18.04で作成したCentOSのコンテナ上でApacheを動かして接続してみた。
試していく中で、httpdのサービスを起動しようとすると、
「Failed to get D-Bus connection: Operation not permitted」というエラーが出て実行できなかった。
以下の手順は、自分の環境でhttpdサービスが起動できた手順を記載。

1.imageの取得
コンテナ上のOSはCentOS7を使用する。
>docker pull centos:centos7
※上記実行後はdocker imagesコマンドでイメージが取得できたことを確認できる。

2.コンテナ起動

コンテナを起動
>docker run --privileged -d --name コンテナ名 centos:centos7 /sbin/init

コンテナに接続
>docker exec -it コンテナ名 /bin/bash

※以降はコンテナ上の操作

3.httpdのインストールと起動

通常のhttpdのインストール
>yum install httpd
>systemctl start httpd

起動まで確認できた時点で、一度コンテナを抜ける
>Ctrl+P+Q

4.現在のイメージを保存
イメージの作成
>docker commit 1-4で操作していたコンテナ名 レポジトリ名:タグ名

もとのコンテナの削除
>docker stop 1-4で操作していたコンテナ名
>docker rm 1-4で操作していたコンテナ名

5.作成したイメージでコンテナを起動
新しいコンテナを4.で作成したイメージをもとに起動
>docker run --privileged -d -p 8080:80 --name 新しいコンテナ名 4.で作ったレポジトリ名:タグ名

※原因はわかっていないが、自分の環境で以下のように実行すると応答がなくなってしまうので、
このような手順で行った。

応答が帰らなくなったコマンド
>docker run --privileged --name コンテナ名 -it -p 8080:80 centos:centos7 /bin/bash

コンテナへ接続
>docker exec -it 新しいコンテナ名 /bin/bash

6.コンテナ上でhttpdの起動
>systemctl start httpd

上記実行後、ホスト側の端末のブラウザで、
http://127.0.0.1:8080に接続するとapacheのテストページが表示される。






最終更新日  2019年03月03日 14時04分05秒
コメント(0) | コメントを書く
2019年01月21日
テーマ:ubuntuでGOGO!(37)
カテゴリ:Docker
Dockerを使ってみた。その前にDockerのイメージについて整理する。
Dockerはいろいろな環境をすぐにセットアップできることが利点となる。コンテナのもととなるデータはDockerイメージといい、自分で作成するか、DockerHUB(https://hub.docker.com)から取得することができる。Dockerイメージを管理するサイトのことをDockerレジストリという。

基本的な使い方は以下の通り。
1.Dockerイメージを取得する
2.Dockerイメーからコンテナを生成する

1つのDockerイメージから複数のコンテナを生成することができる。また、コンテナでどんな操作をしてもDockerイメージは変更されない。ただし、変更を加えたコンテナから新しいDockerイメージを作成し、Dockerレジストリに登録することができる。

実際に使ってみる。

1.Ubuntu 17.10のDockerイメージを取得

$ docker pull ubuntu:17.10

2.ダウンロードしたDockerイメージを確認

$ docker images

3.コンテナ起動(+テストコマンド実行、cat)

$ docker run ubuntu:17.10 cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=17.10
DISTRIB_CODENAME=artful
DISTRIB_DESCRIPTION="Ubuntu 17.10"

※この方法で起動したコンテナはコマンド実行後に終了する。

4.起動中のコンテナの確認

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

※過去に起動していたコンテナの情報も含めて確認

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS               NAMES
48347dc410a5        ubuntu:17.10        "cat /etc/lsb-release"   3 minutes ago       Exited (0) 3 minutes ago                       vibrant_goldberg

※コンテナの削除は以下のコマンド

$ docker rm 48347dc410a5・・・コンテナID

5.コンテナ内で作業する

$ docker run -it --name containername ubuntu:17.10 /bin/bash
root@f822dc8d65f8:/#

「containername」という名前でコンテナを起動した例

docker runのオプション
-itコンテナのプロセスにttyを割り当てる。
-dコンテナをバックグラウンドで実行する。
–name作成するコンテナに名前をつけるオプション。

また、実行中のコンテナ環境において、Ctrl+P+Qを実行することで、一時的にコンテナ環境を抜け出し、
ホストのコンソールに戻れる。

コンテナ環境はバックグラウンドで稼働している。復帰する場合は、
docker attache コンテナ名

※コンテナの名前はホストのコンソールでdocker psで確認可能

6.コンテナの終了

root@f822dc8d65f8:/# exit


7.DockerでWordPressを実行する

・WordPressとMariaDBのイメージを取得
$ docker pull wordpress
$ docker pull mariadb

・WordPress用のコンテナ起動
$ docker run --name mariadb -e MYSQL_ROOT_PASSWORD=p@sSw0rd -d mariadb
$ docker run --name wordpress --link mariadb:mysql -p 80:80 wordpress

上記実行後、http://127.0.0.1/wordpressで接続するとWordPressの画面が表示される。

※主に5のあとに続く内容
8.Dockerコンテナの停止
Dockerコンテナは以下のコマンドで停止が可能
docker stop コンテナ名

停止中のコンテナを含む、コンテナの一覧の確認は以下のコマンド
docker ps -a

上記コマンドで、コンテナ名を確認した後、復帰する場合は以下のコマンドを実行
docker start コンテナ名

なお、停止中のコンテナはホストが再起動しても影響はないので、
再起動後にも接続することが可能。

9.Dockerコンテナの削除
停止中のコンテナに対して、以下のコマンドを実行することでコンテナを削除できる。
docker rm コンテナ名

10.DockerイメージをDockerHUBにアップロード
10.1DockerHUBにアカウント登録、
以下のサイトで「Sign Up」より、アカウントを登録する
https://hub.docker.com/

また、サイト内の「Repositories」よりリポジトリを作成する。

10.2Dockerイメージを登録(ローカル)
停止中のコンテナに対して以下のコマンドを実行
ユーザ名等は、10.1で登録した情報を入力
docker commit コンテナ名 DockerHUBのユーザ名/リポジトリ名:タグ

10.3DockerHUBにログイン
以下のコマンドでログイン
docker login

10.4イメージをアップロード
以下のコマンドでイメージをアップロード
docker push ユーザ名/リポジトリ名:タグ







最終更新日  2019年03月03日 14時04分25秒
コメント(0) | コメントを書く
このブログでよく読まれている記事

全3件 (3件中 1-3件目)

1


Copyright (c) 1997-2019 Rakuten, Inc. All Rights Reserved.