銀河の歴史がまた1ページ(日記)

Last Update (2017/06/22 07:11:53)
1997.09.06から数えて counter 番目のアクセスです。

ミラーサイト [www.ceres.dti.ne.jp] [yk.rim.or.jp]

[ホームページ] [日記] [読んでいる日記] [秋葉原価格] [FreeBSD] [FreeBSD LINK] [検索]

ページ内目次


■ 宇宙暦 2017.06.22

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170622

2017.06.22(木) FireFox 54 1ウィンドウ 1プロセス で処理する高速化技術が投入された模様

ウチだとノートン先生のアドオンが邪魔して有効になってなかった。

タブをたくさん開いてても複数プロセス処理にはならず、どうも別ウィンドウを開くとプロセスが増えるような動きをするっぽい。


■ 宇宙暦 2017.06.21

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170621

2017.06.21(水) FreeBSD 11.0-RELEASE-p9でdockerインストール

注意:FreeBSD版のdockerはdocker-freebsd-20150625で、2年ほどメンテナンスされていないようなので、まじめに使おうとしてはいけない模様。

上のDocker - FreeBSD Wikiを見たら、root file systemがzfsじゃなくても動かせそうだったので、ちょっと試してみる。 FreeBSD版dockerのコンテナドライバはjailらしい。


# zfsカーネルモジュールをロード。zfsはライセンスが違うのでカーネル内蔵にできない。
kldload zfs

# ファイルシステム上に4GBのファイルを作る。HDDだと1分くらいかかる
time dd if=/dev/zero of=/usr/local/dockerfs bs=1024K count=4000

# zfs pool を上の4GBファイル上に作る
zpool create -f zroot /usr/local/dockerfs

# zfs一覧表示。poolを作っただけだが、ファイルシステムも勝手に作られる。
zfs list
# 以下表示例
# NAME    USED  AVAIL  REFER  MOUNTPOINT
# zroot    55K  3.75G    19K  /zroot

# zpool一覧表示
zpool list
# 以下表示例
# NAME    SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
# zroot  3.88G    82K  3.87G         -     0%     0%  1.00x  ONLINE  -

# zfsでファイルシステムを作る。マウントポイント指定付き。
zfs create -o mountpoint=/usr/docker zroot/docker

# zfs一覧表示。/usr/dockerが増えている。
zfs list
# 以下表示例
# NAME           USED  AVAIL  REFER  MOUNTPOINT
# zroot          108K  3.75G    19K  /zroot
# zroot/docker    19K  3.75G    19K  /usr/docker

sysrc -f /etc/rc.conf zfs_enable="YES"

余談だが、zfsはzfs xxxコマンド(zfs listとか)を使った場合でも自動でマウントされる。

さらに余談だが、zfsは/etc/fstabを見ない。

pkg install docker-freebsd ca_root_nss

sysrc -f /etc/rc.conf docker_enable="YES"

service docker start

ssh root@n3050 ~ $ docker version
Client version: 1.7.0-dev
Client API version: 1.19
Go version (client): go1.8
Git commit (client): 582db78
OS/Arch (client): freebsd/amd64
Server version: 1.7.0-dev
Server API version: 1.19
Go version (server): go1.8
Git commit (server): 582db78
OS/Arch (server): freebsd/amd64
ssh root@n3050 ~ $

普通は https://hub.docker.com/explore/ Explore - Docker Hub をブラウザで見るのが良い。

ssh root@n3050 ~ $ docker search centos
NAME                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
centos                                 The official build of CentOS.                   3409      [OK]
jdeathe/centos-ssh                     CentOS-6 6.9 x86_64 / CentOS-7 7.3.1611 x8...   72                   [OK]
nimmis/java-centos                     This is docker images of CentOS 7 with dif...   26                   [OK]
gluster/gluster-centos                 Official GlusterFS Image [ CentOS-7 +  Glu...   19                   [OK]
kinogmt/centos-ssh                     CentOS with SSH                                 15                   [OK]
egyptianbman/docker-centos-nginx-php   A simple and highly configurable docker co...   9                    [OK]

実行結果。あれ。エラーで止まる。

ssh root@n3050 ~ $ docker pull centos
latest: Pulling from centos
6b4988a50482: Extracting [========>                                          ]  11.7 MB/70.49 MB
12bb2fef2ea5: Download complete
3bea5ca0a170: Download complete
Pulling repository centos
Repository not found
ssh root@n3050 ~ $

実行結果。ダウンロードできた。

ssh root@n3050 ~ $ docker pull centos:6
6: Pulling from centos
bc115598a151: Pull complete
061d0bd4322e: Pull complete
21b7bbb1e4be: Pull complete
Digest: sha256:f94fda3b0eaf5858fe27e57838bc0a041633eadbc0d42154c6115c72a815e7a1
Status: Downloaded newer image for centos:6
ssh root@n3050 ~ $

docker run -t -i centos:6 /bin/bash

んんんw uname -a 表示が謎だww Linux 2.6.32 FreeBSD 11.0-RELEASE-p9 って何だw

ssh root@n3050 ~ $ docker run -t -i centos:6 /bin/bash
[root@ /]# uname -a
Linux  2.6.32 FreeBSD 11.0-RELEASE-p9 #0: Tue Apr 11 08:48:40 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@ /]# cat /etc/centos-release
CentOS release 6.9 (Final)
[root@ /]#

ssh root@n3050 ~ $ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
409d009cdde5        centos:6            "/bin/bash"         31 seconds ago      Up 29 seconds                           compassionate_pare
ssh root@n3050 ~ $

[root@ /]# exit
exit
ssh root@n3050 ~ $

ssh root@n3050 ~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
409d009cdde5        centos:6            "/bin/bash"         3 minutes ago       Exited (0) 26 seconds ago                       compassionate_pare
ssh root@n3050 ~ $

コンテナIDの指定では、他のコンテナと区別ができれば、先頭数文字タイプすれば良い模様。

ssh root@n3050 ~ $ docker rm 409
409
ssh root@n3050 ~ $

起動くらいは普通にできてワロタw

イメージ名 centos:6って、Linux用のバイナリファイルシステム一式だよなぁ...。 FreeBSDのLinux 64bit binary comapt機能おそるべし。

linux-c6-6.8_4パッケージを使って、CentOS 6環境を作る個々のrpmをインストールしなくても、バイナリイメージでファイルシステム丸ごと拾って隔離して使えるので、これがガチで動いたら意外に便利かもしれんね...。

docker execは動かないらしいので、真面目に使おうとすると大変そうだけどw


■ 宇宙暦 2017.06.17

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170617

2017.06.17(土) Docker tomcat 公式イメージ探索

Docker tomcat 公式イメージ探索

Tomcatの公式イメージから、8.0.44-jre7, 8.0-jre7, 8.0.44, 8.0 (8.0/jre7/Dockerfile) を見てみる。

Dockerfileは、dockerイメージをbuildするときのレシピというか設定ファイル。これに従ってdockerイメージ(積層型ファイルシステムと関連情報)が作られる。

FROM openjdk:7-jre

ベースにしてるのはopenjdkのdockerイメージ。openjdk:7-jreと書いてあれば、openjdkの公式イメージ使用でタグは7-jre。 余談だが、個人提供のイメージはhoge/openjdk:tag みたいに、/の左に個人名がつく。

EXPOSE 8080
CMD ["catalina.sh", "run"]

メインプロセス(pid=1)として実行されるのはcatalina.sh。 外部に晒すポートは8080指定か。AJPポート8009はデフォルトでは公開されてないのね。

apache/nginxからtomcatに振る場合は、URLで判定してreverse proxyにするのか。

ウチの自宅鯖の場合、Apacheからperl cgiアプリ複数/sh cgiアプリ複数/Tomcatアプリ複数をURLと拡張子見て色々起動しててデパート地下街みたいになってるけどww、 dockerの考え方に従えば、個々のアプリは全部個別のdockerコンテナにして、入り口にURLで振り分けるnginx置いた方が良いよね、ということか。

なるほど。

既存の自宅鯖に適用するの面倒だなぁコレw 個々のアプリの個別バージョンアップとか、個別アプリごとの有効化無効化はぐっとやりやすくなるのは間違いないけど。

FreeBSDでdocker使うのはLinux互換ABI機能を使ってzfsじゃないとダメとか色々大変そう。 Amazon AWSに借りているVPS鯖ではどうかな...。メモリ1GBしか積んでないぞ...。ぐぬぬ。Amazon AWSもっと安くしてくれよん。

Dockerイメージを走行させるサービス(dockerホスティング)は色々なクラウドサービスで提供してるから、そこに俺wiki(tomcatイメージベース)のdockerイメージ焼いてぶっこめばいいのか。

Tomcatのwarを置かせてくれるレンタルサービスってほとんど無いくらいマイナーだった(Tomcatはwar単位のサーブレットアプリの管理機能を持ってたけど、クラウドホスティング会社が扱うにはちょっと向いてなかった。落ちるときは道連れだったし。)けど、dockerイメージなら中の言語もバイナリパッケージ構成もなんでも良くて、待ち受けポートの話、DB接続の話、永続化するファイルシステムボリュームの話に単純化されるわけで、wordpressみたいなメジャーな奴だけでなく、変態マイナー言語使用のバイナリ構成でもホスティングサーバ上で走行を許されることになる。

最小限のOSバイナリ一式を含んで、pid=1に/bin/bashを指定されているdockerイメージなら、VMインスタンス代わりにもなるかも。 外部公開するWebサーバとかを建てるなら、nginxイメージとかtomcatイメージの方を使えばいい。

なんだか、話がずいぶんと簡単になったなぁ、という印象。


■ 宇宙暦 2017.06.16

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170616

2017.06.16(金) Docker for windows (Windows10 Pro用)インストールしてみた。

しかしまあ、Dockerって凄い変動が激しいプロダクトだなーww

Windows版だけで言えば、boot2docker (使ったことないけど) → Docker-toolbox (Windows 7,8,8.1用。Oracle Virtual Boxを使う)(シェルはGit for Windowsのbash.exeを使う) → Docker for windows (Windows 10 Pro用。Hyper-Vを使う)(シェルはPowerShellを使う)と変動している。

正直、PowerShellよりbash.exeを使ってほしかったが...(ぉぃ)。

余談だが、CentOS7のrpm名で言うと、docker or docker-engine → docker-ce と変わっている。 Docker APIのバージョンは1.12から1.27へと駆け上がっている。

毎月リリースする予定って話だから恐ろしい。

凄い開発速度だ...。

何食ってんだろ...。

...。

さて、docker本体は何をするものか、というと、デプロイ環境を隔離して、組み合わせを自由にできる基本セットという感じのモノ。

本当に似てるかどうかはわからんけど、ソースコード配布を自分でコンパイル時々自分でソース修正時代から、バイナリパッケージ配布時代(rpmとかpkgとか)への変化に似ている気がする。

アプリのバイナリ一式、アプリが必要とする各種ライブラリ一式をファイルシステム丸ごと固めて、外部へのファイルマウントやネットワーク接続は管理され限定されつつも可能で、CPU、メモリ、ファイルは他の連中と混ざらないように隔離されている。

たとえば、1台のマシンにapacheやnginxを2個3個起動しようとすると、設定ファイルの場所を個別に変えたりとか、ポート番号が衝突するから手動で変えたりとか、名前ベースの仮想ホスト設定するとか面倒くさいことになる。 互換性試験のためバージョンの異なるapacheを同時に2個建てようとか思うとさあ大変。バイナリパッケージ管理システムへの反逆みたいな感じになるw

dockerの中に隔離されているapacheなどのソフトからは、設定ファイル類はいつもの場所にある(ように見せている)し、ポート番号はいつもの80で待っているので、rpmバイナリはそのまま利用できる。 ポート番号はdockerがポートフォワードする機能を持っていて、docker外部から49023へアクセスがあったらdocker内部の80に転送してくれるし、apacheからDB向け接続なども別途転送してくれる。

というわけで、1台のマシンの中にapache/nginxをそれぞれ10個でも20個でも建てても混乱が起きない(ような管理ソフトが作成できる下地ができた)。

docker-composeというDocker社のツールを使うと、複数の公式dockerイメージ(nginxとtomcat)を連携設定をdocker-compose.ymlに書いておいて、まとめて起動できる。 (普通はApacheの設定ファイルとTomcatの設定ファイル、文法がそれぞれ違うものに対して連携する設定を手で打ち込んでいたものだが。)

逆に、データセンタの中で空いている適当なマシンでdockerを走らせて(マシン間でIP:ポート転送するソフトは必要だが...実はもう付いてるw)も良いので、パワーが必要なクラウド方面でも有効利用できそうだ。

あとは、なんか良さげな管理ソフトがあれば、1台のマシンを限界まで有効活用したり、複数のマシンパワーを有効活用できたり、死んでしまったアプリを自動で別に建て直したりできるあたりが良い点。

悪い点は、docker用のファイルシステムイメージ(dockerイメージ)を作ったり、組み合わせを作ったりするのが面倒臭いwwことと、Linux限定であること(Windowsアプリは無理)、特殊訓練を受けた人がカリカリにチューニングした設定よりは要求リソースが大きく、パフォーマンスでも落ちる点。 ここはソフトで自動管理だから仕方ないし、5万台の設定だと人力チューニングするのも無理なので、コンピューティングパワーで押し切るところ。

以下のサイトに、ダウンロードできるdockerイメージが色々公開されている。

流行りモノだけあって、いろいろな会社がdockerイメージの公式版を登録しているようだ。

実際に使う際には、公式版のイメージがそのまま使えればよし、公式イメージにちょっと設定を加えて自作dockerイメージを作って使ってもよし、さらにdockerイメージを複数組み合わせて一気にシステム全体を作ってもよし、となる。

現状、バージョンアップが鬼のように高速で、ネット上の記事が数日でダメになる勢いを感じるので、割と茨の道っぽいところもあるww

Vagrantみたいに、コマンドラインからOSインストール画面を一切見ずにVMを立てたりもできるので、 生でOracle Virtual Box使うより楽なVagrantの代用品としてインスタンスを建てるのに使うのも良いかも。

p.s.

そういえば、Hyper-Vを有効にするとOracle Virtual Boxが使えなくなるって噂は本当なのだろうか...。 先にOracle Virtual BoxとVagrantをアンインストールしてからDocker for Windowsをインストールしたので 真実がわからん


■ 宇宙暦 2017.06.06

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170606

2017.06.06(火) おとんが iPhone7 と iPad mini 買った

最新のiPhone7だわー。自分のじゃないけどw

ホームボタンは、3Dタッチで言えば強く押すに反応する感じになっていた。 これだとホームボタンのダブルクリックがやりにくくて困る。 ホームボタンが物理ボタンじゃないのは違和感しかないけど、防水のためには仕方ないのか。

iPad miniは、iPad対応アプリだと画面レイアウトがスマホ版と違ってちょっと慣れない。 あと、iPad miniで許しがたいのがフリック入力モードが存在しないこと、仮想キーボードが画面中央に固定表示されて入力フォームの上にかぶさって画面が見えないこと。 設定でなんとかできないと死ねる。

→設定でなんとかできた・・・。キーボードは固定モードがよろしいようで。設定→一般→キーボードに日本語−かなを追加して、設定→一般→キーボードのフリックのみをオンにするとフリック入力もできた。


■ 宇宙暦 2017.06.04

http://www.ceres.dti.ne.jp/~george/jdiaryB70601.html#20170604

2017.06.04(日) iQOS買った

コンビニで偶然売ってたので購入。最後の一個だったようだ。

いまは普通のタバコと併用中ww


■ 宇宙暦 2017.05.31

http://www.ceres.dti.ne.jp/~george/jdiaryB70501.html#20170531

2017.05.31(水) Windows 10 chocolatey - windows powershell で作られたパッケージ管理ソフト / openssh / curl インストール

chocolatey は、yum(CentOS)とかapt-get(Ubuntu)とかpkg(FreeBSD)みたいなモノらしいが、Microsoft公式ではなくて野良パッケージシステムである。

まとめてインストールするときには便利かも。TeraTermもパッケージ化されてるw

もっとも、それぞれのWindowsソフトには公式サイトがあるので、そこからインストールする方法でもいいと思う。 その場合は choco search キーワード でパッケージ名を得て、choco info パッケージ名 で元サイトのURL情報を入手するのに使える。

以下インストール。

  1. 管理者権限でPowerShellを起動
  2. $profile (bashで言えば ~/.profileのようなもの) をまだ作成していない場合は、内容は空で良いのでファイルを作成して保存。$profile ファイルが無いと、chocolatey用の設定が追加されない。
    notepad $profile
  3. リモートで作成されたスクリプトを実行するので、実行権限を緩める
    Set-ExecutionPolicy RemoteSigned
  4. chocolateyのインストール。PowerShellに貼り付けて実行。
    iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
  5. 上でシステム環境変数PATHを書き換えているので、PowerShellは一回閉じる。
  6. 管理者権限でPowerShellを起動
  7. とりあえず、opensshとcURLをインストールする。
    choco install -y openssh
    choco install -y curl
  8. 上でシステム環境変数PATHを書き換えているので、PowerShellは一回閉じる。
  9. コマンドプロンプトを起動。システム環境変数PATHに追加されているので以下が実行できる。
    curl --version
    ssh -V
  10. PowerShellを起動。
    PowerShellの場合、curlにはaliasで Invoke-WebRequest が割り当てられているので、そのままではcurlが実行できない。.exeをつけてaliasではないことを示す。
    curl.exe --version
    ssh -V
  11. ちなみに、PowerShellでbashで言うtypeとかcshで言うwhichみたいなコマンドは、Get-Command と Format-Listを組み合わせる
    Get-Command curl | Format-List
    Get-Command curl.exe | Format-List
    Get-Command ssh | Format-List

■ 宇宙暦 2017.05.22

http://www.ceres.dti.ne.jp/~george/jdiaryB70501.html#20170522

2017.05.22(月) Windows 10 ver. 1703 Creators Update をWin Tab機にインストールしてみた

まだあまり使っていないが、今のところ文鎮にはならずに済んでいる。

設定→個人用設定→画面左のメニューからタスクバー→システムアイコンのオンオフの切り替え→タッチキーボードをONは今まであってほぼ必須機能だったが、今回からタッチパッドをONが追加になったようだ。

TouchMouesPointerより機能は劣るが、仮想タッチパッドウィンドウが表示され、タッチパネル操作で仮想マウスの移動とクリックができるようになった。

ようやくこの便利機能がついたか。長かった...。

Windowsアプリの場合、どうしても画面上で数ドットの精度でマウス操作する必要があったので、この機能があると助かる。


■ 宇宙暦 2017.05.18

http://www.ceres.dti.ne.jp/~george/jdiaryB70501.html#20170518

2017.05.18(木) Windows 10 1703 Creators Update 降ってきた

KabyLakeSマシン(ツクモのBTO)の方にはすぐ降ってきた。 特に問題がない構成のマシンには先にアップデートが来るようだ。

Windows7からアップデートしてるIvyBridgeマシンの方は、このままだといつ更新がかかるかわからないので、 アップデートアシスタントを使って強制的にCreators Updateに更新。

相変わらず、設定(高速起動オフとか)を強制的に上書きしてくるので困ったもんだ。 高速起動オンの何が凄いかって、「シャットダウン」を選んでも、実はハイバネーションしてるとこ。 Windows 10上で動かしているTomcat上の俺wikiアプリなんかは、シャットダウンした後、起動すると前回のHashMap内容が残ってて笑うw

さて、高速なゲームマシン2台はアップデート完了。

WinTab(ASUS T90 Chi)はこれから情報を集めてやるかな。下手すると文鎮化しかねん。


■ 宇宙暦 2017.05.14

http://www.ceres.dti.ne.jp/~george/jdiaryB70501.html#20170514

2017.05.14(日) ツクモBTOのG-GEAR neo GX7J-B91/ZT (KabyLakeS)インストール&設定祭り開催中。

EdgeのURLをコピーすると分単位で操作不能になる事象は、新マシンでは起きない。

つか普通そうだよな...。原因なんだったんだろ?

あ。再現した。http://www.vector.co.jp/soft/winnt/personal/se044499.html Graphic-Clock 動かしてると出るww

原因コレかー。長年の疑問が解けたわー。

別の時計ソフト探そう・・・。

■ゆめりあベンチ

本家からはすでにダウンロードできなくなっていて、手元にある人だけ実行できる。

IvyBridge機は9万だったけど、KabyLakeS機は19万とか滅茶苦茶な数値にw

【CPU】Intel Core i7-7700 KabyLakeS 3.6GHz
【MEM】メーカー謎 DDR4 SDRAM PC4-19200 32GB
【M/B】ASUS TUF Z270 MARK2 (Intel Z270)
【VGA】ASUS STRIX AMD Radeon 480 8GB
【VGA Driver】Catalyst 17.2.1
【DirectX】12
【 OS 】Windows 10 Professional 64 bit build 1607

【解像度】1600x1200
【 画質 】最高
【 スコア 】190883

■PSO2 キャラクリベンチ EP4 設定6 仮想フルスクリーン KabyLakeS 1920x1200 28350

IvyBridge機だと 設定6 仮想フルスクリーン 1920x1080 15550 だったので、随分数値がよくなった。

グラフィックカード Radeon RX 480 の性能は倍近くになっている模様。


old day diaries...


Copyright(c) 1996-2017 George(小濱 純). All rights reserved.
私の作成したページへのリンクはご自由にどうぞ。
このページに間違いや要望などがありましたら george@yk.rim.or.jp まで御連絡ください。
メール本文に 6020-5440-3372 と書いて頂くと、ウチのSPAMフィルタを通過できます(2009-06-14から2017-12-31まで)。

[ホームページ] [日記] [読んでいる日記] [秋葉原価格] [FreeBSD] [FreeBSD LINK] [検索]

home: <george@yk.rim.or.jp> or <george@ceres.dti.ne.jp>
(I am using white list SPAM filter. To avoid it, please write 6020-5440-3372 in mail body. This key word is valid since 2009-06-14 until 2015-12-31.)