Red Hat Enterprise Linux 7 上でのDockerのステータス、使い方の解説と、Project Atomicをはじめとして、CentOS Atomic Host, RHEL Atomic Hostの解説。CentOS Atomic HostでKubernetesを使うチュートリアル。
この資料では、Docker for Windows を使って Windows OS 上で Linux ベースのアプリを開発する方法、そして Web アプリを含む Docker コンテナをクラウド環境(Azure 環境)に展開する方法について解説します。
※ 本資料では Docker の Linux コンテナのみを取り扱います。(Windows コンテナは取り扱いません。Windows OS で使い慣れたエディタや開発環境を使いつつ、Docker for Windows を活用して Linux 上でデバッグを行う、というシナリオを扱っています。)
※ 資料の概要は以下の blog エントリを参照してください。
https://blogs.msdn.microsoft.com/nakama/2018/09/27/dockerandazure/
Introducton to Convolutional Nerural Network with TensorFlowEtsuji Nakai
Explaining basic mechanism of the Convolutional Neural Network with sample TesnsorFlow codes.
Sample codes: https://github.com/enakai00/cnn_introduction
Machine Learning Basics for Web Application DevelopersEtsuji Nakai
This document provides an overview of machine learning basics for web application developers. It discusses linear binary classifiers and logistic regression, how to measure model fitness with loss functions, and graphical understandings of linear classifiers. It then covers linear multiclass classifiers using softmax functions, image classification with neural networks, and ways to improve accuracy using convolutional neural networks. Finally, it discusses client applications that use pre-trained machine learning models through API services and examples of smile detection and cucumber classification.
Your first TensorFlow programming with JupyterEtsuji Nakai
This document provides an introduction and overview of TensorFlow and how to use it with Jupyter notebooks on Google Cloud Platform (GCP). It explains that TensorFlow is Google's open source library for machine learning and was launched in 2015. It is used for many production machine learning projects. Jupyter is introduced as an interactive web-based platform for data analysis that can also be used as a TensorFlow runtime environment. The document then provides details on the programming paradigm and model of TensorFlow, giving an example of using it for a least squares method problem to predict temperatures. It explains the key components of defining a model, loss function, and training algorithm to optimize variables in a session.
This document provides an introduction to deep Q-networks (DQN) for beginners. It explains that DQNs can be used to learn optimal actions in video games by collecting data on screen states, player actions, rewards, and next states without knowing the game's rules. The key idea is to approximate a "Q function" that represents the total expected rewards if optimal actions are taken from each state onward. A deep neural network is used as the candidate function, and its parameters are adjusted using an error function to satisfy the Q-learning equation. To collect the necessary state-action data, the game is played with a mix of random exploration and exploiting the current best actions from the Q-network.
IoT Devices Compliant with JC-STAR Using Linux as a Container OSTomohiro Saneyoshi
Security requirements for IoT devices are becoming more defined, as seen with the EU Cyber Resilience Act and Japan’s JC-STAR.
It's common for IoT devices to run Linux as their operating system. However, adopting general-purpose Linux distributions like Ubuntu or Debian, or Yocto-based Linux, presents certain difficulties. This article outlines those difficulties.
It also, it highlights the security benefits of using a Linux-based container OS and explains how to adopt it with JC-STAR, using the "Armadillo Base OS" as an example.
Feb.25.2025@JAWS-UG IoT
5. Open Cloud Campus
5
Dockerクイックツアー
一般的なサーバ仮想化の分類
物理マシン
物理マシン
ホスト OS
ハイパーバイザ
(カーネルモジュール)
仮想
マシン
ゲスト
OS
VMware vSphere, Xen など
Linux KVM
ハードウェアによる仮想化
(物理マシンにハイパーバイザを内蔵)
ソフトウェアによる仮想化
(物理マシン上にハイパーバイザを導入)
ソフトウェアによる仮想化
(ホスト OS にハイパーバイザ機能を追加)
物理マシン
OS
非仮想化環境
基本的には「物理マシン」と同等の「仮想マシン」を複数
作り出す技術です。
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
ハイパーバイザ(ソフトウェア)
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
物理マシン
ハイパーバイザ(ファームウェア)
11. Open Cloud Campus
11
Dockerクイックツアー
CentOSイメージをダウンロード
構成情報を確認します。
CentOS6のイメージを公式レジストリからダウンロードします。
# docker info
Containers: 0
Images: 0
Storage Driver: devicemapper
Pool Name: docker-252:3-130516-pool
Data file: /var/lib/docker/devicemapper/devicemapper/data
Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
Data Space Used: 291.5 Mb
Data Space Total: 102400.0 Mb
Metadata Space Used: 0.7 Mb
Metadata Space Total: 2048.0 Mb
Execution Driver: native-0.2
Kernel Version: 3.14.6-200.fc20.x86_64
# docker search centos
NAME DESCRIPTION STARS..
centos The official build of CentOS. 146
tianon/centos CentOS 5 and 6, created using rinse instea... 22
blalor/centos Bare-bones base CentOS 6.5 image 4
...
# docker pull centos
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos centos6 0c752394b855 3 days ago 124.1 MB
centos latest 0c752394b855 3 days ago 124.1 MB
centos 6.4 539c0211cd76 14 months ago 300.6 MB
イメージ管理には、Device Mapper
ドライバ(Thin-Provisioning)を使用
イメージの保存領域は(最大)100GB
14. Open Cloud Campus
14
Dockerクイックツアー
コンテナのディスクイメージを保存
終了したコンテナのディスクイメージを新規のリポジトリに保存します。
保存したイメージから、新たなコンテナを起動することができます。
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
fb21d0c069bf centos:centos6 /bin/bash 3 minutes ago Exited (0) 1 seconds ago
boring_bardeen
# docker commit ca1f25132c15 enakai/centos6:traceroute
a0725f4d429fb5c00e47fd9453eea654fc99fe71864d5946a01954ca630cb2e5
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
enakai/centos6 traceroute 44f1d7517217 6 seconds ago 171.6 MB
centos centos6 0c752394b855 3 days ago 124.1 MB
centos latest 0c752394b855 3 days ago 124.1 MB
centos 6.4 539c0211cd76 14 months ago 300.6 MB
# docker run -it enakai/centos6:traceroute /bin/bash
bash-4.1# traceroute --version
Modern traceroute for Linux, version 2.0.14, Nov 11 2010
Copyright (c) 2008 Dmitry Butskoy, License: GPL v2 or any later
bash-4.1# exit
15. Open Cloud Campus
15
Dockerクイックツアー
コンテナのディスクイメージを保存
終了したコンテナで不要なものは、次のコマンドで削除しておきます。
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
16dd08fefadb enakai/centos6:traceroute /bin/bash 2 minutes ago Exited (0) 2
seconds ago distracted_fermi
fb21d0c069bf centos:centos6 /bin/bash 7 minutes ago Exited (0) 4
minutes ago boring_bardeen
# docker rm 16dd08fefadb
docker r16dd08fefadb
# docker rm fb21d0c069bf
fb21d0c069bf
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
27. Open Cloud Campus
27
Dockerクイックツアー
Dockerfileのビルドとコンテナの起動
コンテナを停止した後、再度、起動する例です。
– 「docker run」は、最初にコンテナを起動した際と同じオプションで、再度、コンテナを作成しま
す。ディスクイメージは停止時に保存してあるものを再利用します。
– 不要になったコンテナは停止した後に、「docker rm」で削除しておきます。
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
1014c487be4e enakai/httpd:ver1.0 /usr/local/bin/init. About a minute ago Up About a
minute 0.0.0.0:2222->22/tcp, 0.0.0.0:8000->80/tcp web01
# docker stop web01
web01
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
1014c487be4e enakai/httpd:ver1.0 /usr/local/bin/init. About a minute ago Exited (-1) 2
seconds ago web01
# docker start web01
web01
[root@fedora20 ~]# !curl
curl http://localhost:8000
Hello, World!
# docker stop web01
web01
# docker rm web01
web01
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES