軽量Alpine LinuxによるDockerコンテナ構築術

個数:1
紙書籍版価格
¥3,520
  • 電子書籍
  • Reader

軽量Alpine LinuxによるDockerコンテナ構築術

  • 著者名:中島能和
  • 価格 ¥3,520(本体¥3,200)
  • インプレス(2021/06発売)
  • ポイント 32pt (実際に付与されるポイントはご注文内容確認画面でご確認下さい)
  • ISBN:9784295011651

ファイル: /

内容説明

※この商品は固定レイアウトで作成されており、タブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字列のハイライトや検索、辞書の参照、引用などの機能が使用できません。

コンテナ技術の発展と普及に合わせ、現在ではさまざまなコンテナが提供されるようになっています。
「コンテナ」とはLinuxのカーネルの機能を使ったインフラ技術であり、1つのLinuxサーバーを複数のサーバーのように振舞わせることで従来よりもオーバーヘッドの低い仮想化を実現します。
コンテナの代表的な仕組みであるDockerを使うことで、さまざまなサーバー環境がパッケージ化でき、システムへ簡単に導入/移動/削除できるようになります。そして、これらの普及に合わせて新しいソフトウェアや独自の環境をコンテナ化したいという要望も増えて来ました。
本書は、コンテナの作成に広く使われている「Alpine Linux」を解説するものです。Alpine LinuxはOSに付属のソフトウェア群を極力削った軽量ディストリビューションであり、とても小さなフットプリントを持ちます。このため、導入が簡単で運用しやすい小さなコンテナを作ることが可能です。
本書では、OSとしてのAlpine Linuxの特徴を解説し、その導入の方法や基本的な操作をLinuxの基本から解説します。また、各種のサーバーの導入方法など、目的のソフトウェアを導入したシステムを作成するための手順を解説するほか、それらをDockerコンテナとするための手順も詳しく解説します。
本書の内容を学ぶことで、自分の目的に応じたオリジナルのコンテナを開発でき、それらを公開して運用することも可能となります。現代のシステムインフラストラクチャーに欠かせないコンテナ技術の実践的な活用法を学べる一冊です。

目次

表紙
正誤表/商標など
はじめに
本書の表記/本書で使用した実行環境
第1章 Alpine Linux の概要とインストール
1-1 Alpine Linux とは/1-1-1 Alpine Linux の概要
1-1-2 Alpine Linux の特徴
1-1-3 Alpine Linux のバージョン
1-1-4 Alpine Linux のアーキテクチャ
1-2 Alpine Linux のインストール/1-2-1 Alpine Linux のダウンロードイメージ
1-2-2 物理サーバー・仮想マシンへのインストール
1-3 まとめ
第2章 Docker でAlpine Linux をさわってみよう
2-1 Docker の概要とインストール/2-1-1 Docker とは
2-1-2 Docker のインストール(CentOS)
2-1-3 Docker のインストール(Ubuntu)
2-1-4 Docker のインストール(Alpine)
2-1-5 Docker のインストール(AWS)
2-2 Docker の基本操作/2-2-1 docker コマンド
2-2-2 Docker イメージを取得する
2-2-3 コンテナを起動する
2-2-4 コンテナを削除する
2-2-5 コンテナ内で作業する
2-2-6 コンテナを再開、停止する
2-2-7 Docker イメージを削除する
2-2-8 コンテナを検索する
2-3 Alpine Linux 入門
2-4 まとめ
第3章 Linux の基礎知識
3-1 ファイル管理/3-1-1 Linux のファイル名
3-1-2 ファイルの種類
3-1-3 ファイルの一覧表示
3-1-4 絶対パスと相対パス
3-1-5 Linux のディレクトリ階層
3-1-6 ファイルの表示とディレクトリ移動
3-1-7 ファイルのコピー、移動、削除
3-1-8 ディレクトリの作成、コピー、移動、削除
3-2 ファイルとディレクトリの圧縮と解凍/3-2-1 gzip コマンドとgunzip コマンド
3-2-2 bzip2コマンドとxz コマンド
3-2-3 zip コマンドとunzip コマンド
3-2-4 tar コマンドとアーカイブ
3-2-5 ハードリンクとシンボリックリンク
3-3 パーミッション/3-3-1 所有者と所有グループ
3-3-2 パーミッションの設定
3-3-3 ディレクトリのアクセス権
3-3-4 パーミッションの変更
3-4 シェル/3-4-1 シェルとは何か
3-4-2 メタキャラクタ
3-4-3 標準入出力
3-4-4 パイプ/3-4-5 シェルの便利な機能
3-4-6 シェル変数と環境変数
3-4-7 引用符
3-4-8 コマンドとパス
3-5 シェルスクリプト/3-5-1 シェルスクリプトとは
3-5-2 シェルスクリプトの決まりごと
3-5-3 シェルスクリプトの実行方法
3-5-4 引数と終了ステータス
3-6 テキスト処理/3-6-1 正規表現
3-6-2 grep コマンド
3-6-3 ファイルの一部を表示するコマンド
3-7 プロセスの管理/3-7-1 プロセスとは
3-7-2 システム情報の表示
3-7-3 プロセスの終了
3-8 ファイルシステム/3-8-1 ファイルシステムとは
3-8-2 パーティションの作成
3-8-3 ファイルシステムの作成
3-8-4 マウントとアンマウント
3-8-5 /etc/fstab ファイル
3-9 まとめ
第4章 Alpine Linux の構成
4-1 軽量化を実現する仕組み/4-1-1 BusyBox
4-1-2 OpenRC
4-1-3 Syslinux
4-2 基本的なシステム管理/4-2-1 シャットダウンと再起動
4-2-2 サービスの管理
4-2-3 rc-update コマンド
4-2-4 rc-service コマンド
4-2-5 ログの管理
4-2-6 crontab
4-2-7 システム監視
4-2-8 alpine-setup コマンド
4-3 パッケージ管理システム/4-3-1 パッケージの検索
4-3-2 apk コマンド
4-3-3 インデックスの更新/4-3-4 パッケージのインストールと削除
4-3-5 パッケージとシステムのアップデート
4-3-6 パッケージの検索
4-3-7 パッケージ情報の確認
4-3-8 ヘルプの表示
4-3-9 リポジトリの設定
4-4 より快適に利用するために/4-4-1 インストール後にやっておきたいこと
4-4-2 注意すべきコマンド
4-5 まとめ
第5章 Alpine Linux サーバーの構築
5-1 ネットワークの管理/5-1-1 ネットワークインターフェイスの設定
5-1-2 DNS の設定/5-1-3 ホスト名の設定
5-1-4 ネットワークの疎通確認
5-1-5 ネットワーク情報の確認
5-1-6 ファイアウォール
5-2 Apache Web サーバーの構築/5-2-1 Apache の導入と起動
5-2-2 Apache の基本設定
5-2-3 PHP の利用
5-3 Nginx Web サーバーの構築/5-3-1 Nginx の導入と起動
5-3-2 Nginx の設定
5-3-3 PHP の利用
5-4 OpenSSH サーバーの構築/5-4-1 OpenSSH サーバーの導入と起動
5-4-2 OpenSSH サーバーの設定
5-4-3 公開鍵認証の設定
5-4-4 SSH クライアント
5-5 Samba サーバーの構築/5-5-1 Samba サーバーの導入と起動
5-5-2 Samba サーバーの設定
5-6 MariaDB/5-6-1 MariaDB のインストールと初期設定
5-6-2 MariaDB の初期設定
5-6-3 MariaDB クライアントコマンドの利用
5-6-4 MariaDB のバックアップとリストア
5-7 PostgreSQL/5-7-1 PostgreSQL のインストール
5-7-2 PostgreSQL のクライアントコマンド
5-7-3 PostgreSQL のバックアップとリストア
5-8 まとめ
第6章 Docker イメージの作成
6-1 Docker イメージの基礎/6-1-1 コンテナからDocker イメージを作成する
6-1-2 Dockerfile でコンテナを作成する
6-1-3 Dockerfile の構文
6-2 Docker イメージの作成例/6-2-1 Web サーバー(Apache)
6-2-2 Samba
6-2-3 Python
6-2-4 CentOS
6-2-5 BusyBox
6-3 まとめ
第7章 Docker ネットワークとDocker Compose
7-1 Docker のネットワークとマウント/7-1-1 仮想ネットワークの利用
7-1-2 ポート公開/7-1-3 バインドマウント
7-1-4 ボリュームマウント
7-2 Docker Compose/7-2-1 Docker Compose のインストール
7-2-2 YAML
7-2-3 docker-compose.yml
7-2-4 docker-compose コマンド
7-3 まとめ
付録A
A-1 Docker とVisual Studio Code の連携
A-2 プライベートレジストリを構築する
A-3 Alpine Linux & Docker 重要コマンド一覧
索引
著者紹介
奥付