Docker Toolboxのインストール方法(プロキシ対応あり)

WindowsのPCでDockerを使うには、2つのツールが用意されています。
・Docker for Windows
・Docker Toolbox

ただし、Docker for Windowsを利用するには、以下の3つの要件をクリアしている必要があります。
①Windows 10 Pro または Enterprise(64bit)のPC
②VirtualBoxなどの仮想化ソフトをインストールしていない
③Hyper-Vを有効にしている

つまり、本来Linuxカーネルの技術を利用している都合上、Hyper-Vを利用する必要があるみたい。現に、Docker ToolboxをインストールするとVirtualBoxも一緒にインストールされて、そのVIrtualBoxで稼働するLinux上でDockerを動かす仕組みみたい。

前置きが長くなりましたが、私のPCは要件を満たしていないので、Docker Toolboxをインストールしました。手順は↓

Docker Toolboxインストールの流れ

こちらにアクセスして、インストーラーをダウンロードします。https://docs.docker.com/toolbox/overview/

あとはインストーラーを起動して、以下の流れで完了。

【プロキシ環境で使う場合は・・・・】
「C:\Program Files\Docker Toolbox\start.sh」に以下を追記します。
これにより、Docker Toolboxがプロキシ経由で動作します。

HTTP_PROXY=http://proxy-host:port/
HTTPS_PROXY=http://proxy-host:port/
NO_PROXY=127.0.0.1

あとは、デスクトップ上に作成されたDocker Quickstart Terminal のショートカットからターミナルを起動するだけ。

あとは「docker version」と打って、結果が返ってくればOK。


Java スレッド処理でsynchronizedを利用する場合の注意(マルチスレッド)

Javaで同期処理を実装する場合、メソッドにsynchronized修飾子をつけて、複数スレッドからの呼び出しを抑止することができます。つまり、2つのスレッドが同時にメソッドを呼び出した場合、先に呼び出したスレッドの処理が優先され、後から呼び出したスレッドは先行するスレッドが終了するまで待たされることになります。

しかし、これには少し注意しなきゃいけないことがあります。それは、「synchronizedメソッドは、そのメソッドが属するインスタンスが複数ある(マルチスレッド)場合は機能しないということです。」

では、マルチスレッドで同期処理を実装するには、どうしたらいいのかというと、下記のようにグローバルに参照可能なロック用オブジェクトを作成して、排他制御をする実装方法があります。

このような実装であれば、Globalクラスのlockというクラス変数のロックがとれない限り、そのスレッドの処理は待たされることになり、複数スレッドによる同期処理を実装することができます。

単に、「なんでもsynchronizedを付ければいいんでしょ?」で実装していた自分が恥ずかしい。。。
(´;д;`) 


日本ディープラーニング協会 G検定(ジェネラリスト検定)に合格した!

世の中、AIエンジニアが不足していると言われていますが、「じゃあ、AIエンジニアになったら年収あがるのか!?」「何ができればAIエンジニアなの?」と思う今日このごろ。

とりあえず、AIの資格を持っていればいいかもと思い、資格を調べてみると日本ディープラーニング協会が主催する資格があった。
https://www.jdla.org/business/certificate/?id=certificate_No01

【試験概要】

 【シラバス】

AI全般の知識を問うジェネラリスト試験の他にAIそのものを実装するエンジニア試験もあるが、これは少しハードルが高いので、まずはジェネラリストの資格取得を目指しました!

●勉強方法

まだ2回目の開催なので、勉強法もなかなか紹介されておらず、いろいろ模索して以下の勉強を進めました!

〇書籍で勉強

人工知能は人間を超えるか ディープラーニングの先にあるもの

日本ディープラーニングの理事長の東大の松尾教授の書籍。人工知能、特にディープラーニングについて、わかりやすく書かれていました。私は、人工知能関連の知識は皆無だったので、この本に最初に出会ったのが良かったです。

AI白書

こちらは、人工知能の現状について網羅的に書かれた分厚い本です。正直、難しいところは何回読んでも理解できませんでした。。。

 深層学習教科書 ディープラーニング G検定(ジェネラリスト) 公式テキスト

学習を開始して、上述の2冊を読み終えたころ、公式テキストが出ました!正直もっと早くでてほしかったけど。

〇WEB動画

AidemyというAI関連のWEB学習を提供しているサイトがある。無料の範囲でも、人工知能、機械学習の基本的なことはよく理解できました!
https://aidemy.net/

〇その他

他に、特に効果的だったのは、

  • シラバスに載っているキーワードを自分で調べてみる
  • シラバスに乗ってる例題を解いてみる

●結果は・・・

見事合格!

こんな合格証書がきました!

正直、全然手ごたえなかったんだけど、合格点は好評されておらず、合格率も50%を超えているので、もしかしたら合格点が低いのかも!!??


日々のSE業務で得たノウハウと趣味