Dockerハンズオン用環境準備【EC2】

Dockerのハンズオンに参加するので準備と思ったけど、、、
持出用のWinノートもMacBookも持っていない僕はUbuntu入りの
Chromebookしかないので、、、
デスクトップ機はDocker for Windowsが入っているものの、それ
持ってけません。しょうがないのでEC2
CentOS環境を準備し、そこにChromebookのUbuntuからssh -i で
接続する方法で対応することにした。
AWSのハンズオン(EC2にssh接続必要な場合)もこの方法でしのいだ(笑)

んで、EC2上にDocker環境を構築した際の備忘録
最近はUbuntuインストールが多くCentOS7は久々だ。
※というよりAMI準備しておいてそこからDockerだけインストールとか
 すれば楽なんだけどEBSのお金をけちってAMI保存していない。
 数円レベルなんですけどね。

Gitはいらないかもしれないけどなんかあったときにツール落とすのとかで
あると重宝するので入れておくにこしたことなし。

●参照サイト
https://qiita.com/uhooi/items/f8c67a9e716a226e28cd
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html

AMIは以下を使用してt2microで構築します。

CentOS 7 (x86_64) - with Updates HVM
 (58)
| 1805_01 以前のバージョン | By Centos.org
$0.00/hr for software + AWS usage fees
Linux/Unix, CentOS 7 | 64 ビット Amazon マシンイメージ (AMI) | 更新済み: 2018/06/13

(1)ホスト名設定
(2)アップデート、ツールインストール
(3)SELinux無効化等
(4)sshセキュア強化
(5)日本語化
(6)ntp設定
(7)git インストール
(8)Dockerインストール

●以下コマンド

(0)バージョン確認
$ sudo cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

(1)ホスト名設定
$ sudo hostnamectl set-hostname docker_test

(2)アップデート、ツールインストール
$ sudo yum -y update
$ sudo yum -y install ntpdate vim mailx unzip bash-completion

(3)SELinux無効化等
$ getenforce
Enforcing
$ sudo vi /etc/selinux/config

※以下の通り修正
---------------------------------
#SELINUX=enforcing
SELINUX=disabled
---------------------------------

 (4)sshセキュア強化
$ sudo sed -i -e "s/^#PermitRootLogin yes/PermitRootLogin no/g" /etc/ssh/sshd_config
$ sudo setenforce 0
$ sudo service sshd restart

(5)日本語化
$ sudo yum -y install ibus-kkc vlgothic-*
$ sudo localectl set-locale LANG=ja_JP.UTF-8
$ sudo localectl set-keymap jp106
$ source /etc/locale.conf
$ sudo timedatectl set-timezone Asia/Tokyo

(6)ntp設定
$ sudo ntpdate ntp.nict.jp
$ sudo sh -c "echo -e  'server ntp.nict.jp\nserver ntp.nict.jp\nserver ntp.nict.jp' > /etc/chrony.conf"
$ sudo systemctl start chronyd
$ sudo systemctl enable chronyd
$ sudo chronyc sources -v

(7)git インストール
$ sudo yum install git-all
$ git --version
git version 1.8.3.1

(8)Dockerインストール
$ sudo yum -y install docker
$ docker --version
Docker version 1.13.1, build 8633870/1.13.1
$ sudo systemctl start docker
$ sudo systemctl enable docker

終わったらリブートしてDockerコマンドが動くか確認です。
さて、これでハンズオンへの準備完了です。

ちなみに構築中にEC2のはずれを2連続で引いて、日本語化失敗してて
おかしいなぁと調べてても答え出なくて3回目でようやくまともな
AMIイメージが当たったようで、それだとすんなりいきました。


接続の際はChromebookでUbuntuを起動してターミナルから以下のコマンドで接続

$ ssh -i /path/my-key-pair.pem "username"@ec2-198-51-100-1.compute-1.amazonaws.com

普通にMacBookとかWindowsノート買えばいいんだろうけど
そんなお金ないしChromebookを使い続けています。
勉強会とかハンズオンいっても1人だけChromebookです。仲間はいません。
ぼっちです。

Chromeのリモート接続で自宅のデスクトップ使えばよかったんじゃないかという
突っ込みはなしでお願いします(爆

コメント

このブログの人気の投稿

証券外務員1種勉強(計算式暗記用メモ)

GASでGoogleDriveのサブフォルダとファイル一覧を出力する

マクロ経済学(IS-LM分析)