AWSのCloud9上でバージョンを更新・切り替え
それではCloud9を使い始めるにあたって最初に設定したほうが良いことがいろいろとあるので、説明していきます。
Cloud9のデフォルトのOSやツールのバージョンは古いので、更新・切り替えをしていきます。
OSの更新
まずCloud9のターミナルで以下のコマンドを叩いてOSのバージョンを確認します。
$ cat /proc/version
出力:
Linux version 4.14.77-70.82.amzn1.x86_64 (mockbuild@gobi-build-64003) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC)) #1 SMP Mon Dec 3 20:01:27 UTC 2018
ちょっとOSが古いので、以下のコマンドでOSをアップデートします。
$ sudo yum -y update
これでOSの更新はOK。
タイムゾーンの変更
dateコマンドで確認するとタイムゾーンがUTCになっているので、これを変更します。
sudo vi /etc/sysconfig/clock
これでvimが開けたら、Aを押して挿入モードに変更して、
ZONE = "UTC"
のセミコロンの中を
Asia/Tokyo
に変更して、保存するのだけれど、escキーが効かないので、ctrl + cを押して、:wqで enterすると、保存できました。
で、今の変更をローカル環境に反映させるコマンドがこちら
$ sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
再起動します。
$ sudo reboot
再起動したらdateコマンドを叩いてタイムゾーンが変更されているか確認。JTCになっていればOK
Mysqlのバージョンを更新
以下のコマンドでMysqlのバージョンを確認
$ mysql --version
mysql Ver 14.14 Distrib 5.5.62, for Linux (x86_64) using readline 5.1
Mysql5.5は古いので、以下のコマンドでアンインストールします。
$ sudo yum -y remove mysql-config mysql55-server mysql55-libs mysql55
Mysql5.7をインストールします。
$ sudo yum -y install mysql57-server mysql57
以下コマンドでMysqlの設定ファイルを編集します。
$ sudo vi /etc/my.cnf
[mysqld]セクションの
# instructions in http://fedoraproject.org/wiki/Systemd
の下に以下を記述
character-set-server=utf8mb4
[client]
default-character-set=utf8mb4
Mysqlサーバーを起動します。
$ sudo service mysqld start
データベースをアップグレードする必要があります。
$ sudo mysql_upgrade -u root --force
リスタートします。
$ sudo service mysqld start
サーバーを起動した時に、自動で起動するように設定します。
$ sudo chkconfig mysqld on
あとはmysql --versionで確認してMysql5.7になっていて、
sudo -u rootでmysqlに入れればOKです。
PHPのバージョンを更新
以下のコマンドでPHPのバージョンを確認
$ php -v
PHP5.6なので古いですね。更新したほうが良いので、以下コマンドでいろいろとインストールします。
$ sudo yum -y install php72 php72-devel php72-mysqlnd php72-gd php72-intl php72-mbstring
PHPのバージョンを切り替えるためのコマンドをたたきます。
$ sudo update-alternatives --config php
すると、
Selection Command
*+ 1 /usr/bin/php-5.6
2 /usr/bin/php-7.2
Enter to keep the current selection[+], or type selection number:
と出てくるので、「2」を記述してreturnキーを押します。
php -vコマンドで7.2になっていればOKです。
Pythonのバージョンを切り替え
デフォルトではPython2.7になっているのですが、すでにPython3.6は入っています。エイリアスを変更してやるだけでOKです。
$ vi ~/.bashrc
でvimを開いて、
# User specific aliases and functions
alias python=python27
の「27」を「36」に書き換えます。
$ source ~/.bashrc
で変更を反映させます。
$ sudo update-alternatives --config python
PHPの時と同じこのコマンドをたたきます。
Selection Command
*+ 1 /usr/bin/python2.7
2 /usr/bin/python3.6
Enter to keep the current selection[+], or type selection number: 2
と聞かれるので、「2」を記入してreturnキーを押す。
$ python -V
でPythonのバージョンを確認して3.6系に変わっていればOKです。
NodeJSのバージョンを更新
$ node -v
で確認すると、6.15.0と古いので、更新します。Cloud9ではnvmというバージョン管理ツールを使っているので、それをインストールします。インストール可能なnvmを調べるコマンドを使います。
$ nvm ls-remote
バージョンが一覧表示されるのですが、v10.15.0 の右に文字が書いてあります。
v10.15.0 (Latest LTS: Dubnium)
LTSとは「Long Time Support」の略で、しばらく使い続けられるのでこれにします。
$ nvm install v10.15.0
これでインストールできました。node -vで確認するとv10.15.0と帰ってくるとおもいます。