アフィリエイト広告を利用しています
ファン
最新記事
写真ギャラリー
カテゴリーアーカイブ
日別アーカイブ
<< 2016年06月 >>
      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    

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2016年06月04日

docker事始め

CentOS7をインストールを使用し、dockerを触ってみた。
dockerインストール


[root@cent7 ~]# yum install -y docker


dockerインストール後の確認

[root@cent7 ~]# rpm -qa | grep docker
docker-1.9.1-40.el7.centos.x86_64
docker-selinux-1.9.1-40.el7.centos.x86_64
docker-forward-journald-1.9.1-40.el7.centos.x86_64
docker-common-1.9.1-40.el7.centos.x86_64
[root@cent7 ~]#
[root@cent7 ~]# systemctl start docker
[root@cent7 ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@cent7 ~]# systemctl -t service list-unit-files | grep -i docker
docker-storage-setup.service disabled
docker.service enabled
[root@cent7 ~]#



dockerイメージファイルの取得

イメージファイルをdocker pullコマンドで、インターネット経由で取得する。
[root@cent7 ~]# docker pull centos;centos6
Using default tag: latest
Trying to pull repository docker.io/library/centos ... latest: Pulling from library/centos
1544084fad81: Pull complete
df0fc3863fbc: Pull complete
a3d54b467fad: Pull complete
a65193109361: Pull complete
Digest: sha256:1a62cd7c773dd5c6cf08e2e28596f6fcc99bd97e38c9b324163e0da90ed27562
Status: Downloaded newer image for docker.io/centos:latest

[root@cent7 ~]#



dockerイメージファイルの確認


[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/centos latest a65193109361 33 hours ago 196.7 MB
[root@cent7 ~]#


コンテナの起動


docker リポジトリから、ダウンロードしたイメージファイル群のうち、centos6というタグのついたイメージファイルから、コンテナを生成し、起動する。
--nameオプションはコンテナの名前を指定する。-iオプションは、コンテナの標準入力を開いた状態にし、-tオプションは、仮想端末を割り当て、「コンテナの標準入力にアタッチする。
[root@cent7 ~]# docker run --name test01 -i -t centos:centos6 /bin/bash
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
[root@ada7fb668bb6 /]#


コンテナのOSのバージョンを確認


コンテナのOSのバージョンを確認します。
[root@ada7fb668bb6 /]# cat /etc/redhat-release
CentOS release 6.8 (Final)
[root@ada7fb668bb6 /]#
[root@ada7fb668bb6 /]# hostname
ada7fb668bb6
[root@ada7fb668bb6 /]#


イメージファイルの検証

試しに、dockerコンテナ上にの/rootディレクトリに、ファイルtestfileを作成してみる。
[root@ada7fb668bb6 /]# touch /root/testfile
[root@ada7fb668bb6 /]# ls -l /root/testfile
-rw-r--r-- 1 root root 0 Jun 4 06:09 /root/testfile
[root@ada7fb668bb6 /]#

dockerコンテナのOS環境から、離脱する。

[root@ada7fb668bb6 /]# exit
exit
[root@cent7 ~]#


コンテナの一覧表示

ホストOS上で、過去に起動したコンテナ一覧を確認
[root@cent7 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ada7fb668bb6 centos:centos6 "/bin/bash" 5 minutes ago Exited (130) 26 seconds ago test01


コンテナのイメージ化

作業したコンテナを再利用できるように、コンテナのイメージ化を行う。作業したコンテナIDとイメージを指定して、コミットを行う。
[root@cent7 ~]# docker commit ada7fb668bb6 centos:centos6
4dcb99183e43d3ce417d19b753f520bc894aea858c2729ea9b3c6270f4787a7a
[root@cent7 ~]#


コンテナの一覧表示

現在のイメージファイルの一覧を確認。
[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos centos6 4dcb99183e43 40 seconds ago 194.6 MB
docker.io/centos centos6 e133ccd15399 34 hours ago 194.6 MB
docker.io/centos latest a65193109361 34 hours ago 196.7 MB
[root@cent7 ~]#

別のコンテナの生成と確認

先程、コミットしたイメージファイル「centos:centos6」を使って、別のコンテナtest02を生成。
[root@cent7 ~]# docker run --name test02 -i -t centos:centos6 /bin/bash
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
[root@e23e4c8f9044 /]# ls -l /root/testfile
-rw-r--r-- 1 root root 0 Jun 4 06:09 /root/testfile

コンテナtest02で/root/testfile2を生成する

[root@e23e4c8f9044 /]# touch /root/testfile2
[root@e23e4c8f9044 /]# exit
exit
[root@cent7 ~]#


別のコンテナのコミット

ホストOS側で、生成したtest02をコミットする。

[root@cent7 ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e23e4c8f9044 centos:centos6 "/bin/bash" 2 minutes ago Exited (0) 53 seconds ago test02
ada7fb668bb6 e133ccd15399 "/bin/bash" 29 minutes ago Exited (130) 24 minutes ago test01
[root@cent7 ~]#
[root@cent7 ~]# docker commit e23e4c8f9044 centos:testfile2
b01c09c05772010e429b215463d343fa0116e8cff26709b1eca8aaf6f24c3d13
[root@cent7 ~]#


コンテナの一覧表示

現在のイメージファイルの一覧を確認。
[root@cent7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos testfile2 b01c09c05772 50 seconds ago 194.6 MB
centos centos6 4dcb99183e43 24 minutes ago 194.6 MB
docker.io/centos centos6 e133ccd15399 34 hours ago 194.6 MB
docker.io/centos latest a65193109361 34 hours ago 196.7 MB
[root@cent7 ~]#


参考書籍









タグ:docker

CentOS6.xとCentOS7とのサービス管理コマンド比較


前回記事の続き。
CentOS6.xとCentOS7とのサービス管理コマンド比較。

サービスの開始

(CentOS6.x)

#service vsftpd start


(CentOS7)

#systemctl start vsftpd



サービスの停止

(CentOS6.x)

#service vsftpd start


(CentOS7)

#systemctl start vsftpd



サービスの再起動

(CentOS6.x)

#service vsftpd restart


(CentOS7)

#systemctl restart vsftpd



設定ファイルの再読み込み

(CentOS6.x)

#service vsftpd reload


(CentOS7)

#systemctl reload vsftpd



ただし、該当サービスのユニット管理ファイルに「ExecReload=」オプションの指定のないサービスの場合、reloadオプションはエラーになります。」

[root@cent7 ~]# cat /usr/lib/systemd/system/vsftpd.service
[Unit]
Description=Vsftpd ftp daemon
After=network.target

[Service]
Type=forking
ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf

[Install]
WantedBy=multi-user.target
[root@cent7 ~]# systemctl reload vsftpd
Failed to reload vsftpd.service: Job type reload is not applicable for unit vsftpd.service.



サービス状態の確認

(CentOS6.x)

#service vsftpd status


(CentOS7)

#systemctl status vsftpd



サービスがすでに稼働している場合、サービスを再起動する

(CentOS6.x)

#service vsftpd condrestart


(CentOS7)

#systemctl condrestart vsftpd



次回OS起動時に自動的にサービス再起動する

(CentOS6.x)

#chkconfig vsftpd on


(CentOS7)

#systemctl enable vsftpd



次回OS起動時に自動的にサービス再起動しない

(CentOS6.x)

#chkconfig vsftpd off


(CentOS7)

#systemctl disable vsftpd



ランレベルごとの全サービス有効・無効確認

(CentOS6.x)

#chkconfig --list


(CentOS7)

#systemctl -t service list-unit-files



ランレベルごとに指定したサービスの有効・無効確認

(CentOS6.x)

#chkconfig --list vsftpd


(CentOS7)

#systemctl -t service list-unit-files | grep -i vsftpd



参考書籍




CentOS7「systemd」についての備忘録

前回記事の続き。

CentOS7でのサービス系管理機能「systemd」についての備忘録。

systemdの仕組み

CentOS7では、chckconfigコマンドによるサービスの有効化、無効化などに代わり、
systemctlコマンドを使って、サービスの起動、停止、状態管理などを行う。
systemdでは、ユニットと呼ばれる単位で、管理を行う。

ユニットとは

ユニットとは、systemdの管理対象となる処理の単位のことを指し、次に示すいくつかのタイプが存在する。

  • service:各種デーモンやサービスの起動
  • target:複数のユニットをグループ化したもの
  • mount:ファイルシステムのマウント制御
  • device:ディスクデバイス
  • socket:FIFP、Unixドメインソケット、ポート番号などに関する通信資源


OSの起動時における起動の有効化・無効化確認


OSの起動時における起動の有効化・無効化および設定状態を確認するには、ユニットの種類として、「service」を指定し、
list-unit-filesを指定する。


[root@cent7 ~]# systemctl -t service list-unit-files
UNIT FILE STATE
arp-ethers.service disabled
auditd.service enabled
UNIT FILE STATE
・・・・
・・・・
tuned.service enabled
wpa_supplicant.service disabled

144 unit files listed.


FTPサービスの設定事例



[root@cent7 ~]# systemctl -t service list-unit-files | grep -i vsftpd
vsftpd.service disabled
vsftpd@.service disabled
[root@cent7 ~]#


「disabled」は、OS起動時に自動起動しない。

FTPサービスの状態確認


[root@cent7 ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)
[root@cent7 ~]#


「Active:」の項目は、「inactive (dead)」のため、現在、vstpdは起動していない。

FTPサービス起動


[root@cent7 ~]# systemctl start vsftpd
[root@cent7 ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
Active: active (running) since 土 2016-06-04 13:21:17 JST; 4s ago
Process: 8452 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS)
Main PID: 8453 (vsftpd)
CGroup: /system.slice/vsftpd.service
mq8453 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf

6月 04 13:21:17 cent7 systemd[1]: Starting Vsftpd ftp daemon...
6月 04 13:21:17 cent7 systemd[1]: Started Vsftpd ftp daemon.
[root@cent7 ~]#


「Active:」の項目は、「active (running) 」のため、現在、vstpdは起動している。

FTPサービス自動起動設定


[root@cent7 ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@cent7 ~]# systemctl -t service is-enabled vsftpd
enabled
[root@cent7 ~]#


検索
最新コメント
タグクラウド
プロフィール
さんの画像

アラフォー世代です。コンピュータ関連を中心に、戯言をグダグダと書き綴ってます。
プロフィール
×

この広告は30日以上新しい記事の更新がないブログに表示されております。