Oracle Cloud Free Tierで無料のUdemy Bootstrapコースを更新する
25230は最近、 「初心者向けUdemy無料コース2選」を公開しました。その記事で紹介された2つのUdemyコースのうち2つ目は、「PHP、MySQL、AJAXを使った会員限定ブログの作成」です。
前回の投稿で、Udemyメンバー限定ブログコースの前提条件としてLAMPスタックのインストールについて触れました。多くの人は、開発マシン上でLAMPスタックやその他のスタックをローカルで実行することを好みますが、クラウドでの作業を好む人もたくさんいます。
Udemyのコースは、 Business CasualというBootstrapテーマをベースにしています。Business CasualテーマはStartBootstrapから派生したものです。StartBootstrapのBusiness Casualテーマの最新バージョンは、無料のMITライセンスの下でGithubから入手できます。
前回のUdemyコースの投稿でも触れましたが、このコースは作成されてから数年が経過しています。コースを更新することは可能でしょうか?最新のLAMPスタックを新たに起動し、GitHubからBusiness Casualの最新バージョンをインストールすることは可能でしょうか?
さあ、宿題を出してみよう! Oracle Cloud Free TierのUbuntuインスタンスに最新のLAMPとBusiness Casualをインストールしてみることにしよう。多くの人が利用している便利な無料アカウントを提供してくれたOracleに改めて感謝する!
LAMPチュートリアル
LAMP のインストールに関するチュートリアルは、Web 上に驚くほどたくさんあります。私もいくつか見てみましたが、特に役立つと思ったのは以下の 2 つです。
LAMP のインストールが簡単になりますか?
GithubにTeddysunさんのLAMPインストールスクリプトがあります。ざっと読んでみたところ、なかなか良いスクリプトですね!2.6Kスターを獲得しています。
宿題の手順と結果
以下に、LAMPとBusiness Casualのインストールを試みる際に使用したコマンド手順を記載します。また、コマンドとその出力の行番号付きトランスクリプトもご用意しています。
このプロセスは部分的に成功し、LAMPとBusiness Casualがインストールされ、Apacheがhttp経由でBusiness Casualに正常にサービスを提供できるようになりました。既知の不具合としては、少なくとも、設定されたサブドメインのLet's Encrypt証明書が発行されないことと、MySQLパスワードの設定に失敗することがあります。Udemyのコースを進めていくうちに、これらの2つのインストール不具合の解決方法について、何かヒントが得られるかもしれません。
Ubuntuのアップデートとアップグレード
$ sudo apt update
$ sudo apt upgrade
$ sudo reboot # Just to be sure it can reboot.
Apacheとファイアウォールの設定のインストール
$ sudo apt install apache2
$ sudo ufw app list
$ sudo ufw allow in "Apache"
$ sudo ufw status
Status: inactive
$ sudo ufw allow in "OpenSSH"
$ sudo ufw enable
$ sudo ufw status
Status: active
アクションへ から
— —— —-
Apache どこでも許可
OpenSSH どこでも許可
Apache (v6) どこでも許可 (v6)
OpenSSH (v6) どこでも許可 (v6)
$ curl $(curl icanhazip.com) # ローカルマシンから http://$Server_IP # 動作しませんでした。なぜでしょうか?
$ sudo 再起動
$ curl $(icanhazip.com) # ローカルマシンから http://$Server_IP へアクセス # 再起動後に動作します。なぜでしょうか?
MySQLのインストール
$ sudo apt install mysql-server
$ sudo mysql_secure_installation # MySQL root password doesn't work
PHPのインストール
sudo apt install php libapache2-mod-php php-mysql
$ php -v
$ sudo mkdir /var/www/bcas.metalvps.com
$ sudo chown ubuntu:ubuntu /var/www/bcas.metalvps.com
$ cd /etc/apache2/sites-available
$ ed bcas.metalvps.com # ed editor facilitates making the transcript
bcas.metalvps.com.conf: No such file or directory
a
<VirtualHost>
ServerName bcas.metalvps.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/bcas.metalvps.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
.
w
260
q
$ sudo a2ensite bcas.metalvps.com
$ sudo systemctl reload apache2
$ sudo apache2ctl configtest
$ cd /var/www/bcas.metalvps.com/
$ ed index.html
index.html: No such file or directory
a
<html>
Hello from bcas.metalvps.com!
.
-1
<html>
a
<center>
.
w
46
q
$ curl bcas.metalvps.com # Also http://bcas.metalvps.com from Chrome on local machine
$
CertbotのインストールとLet's Encrypt証明書の取得
$ sudo apt install certbot python3-certbot-apache
$ sudo ufw allow 'Apache Full'
$ sudo ufw delete allow 'Apache'
$ sudo ufw status
Status: active
アクションへ から
— —— —-
OpenSSH どこでも許可
Apache 完全許可(どこでも)
OpenSSH (v6) どこでも許可 (v6)
Apache フル (v6) ALLOW Anywhere (v6)
$ sudo certbot –apache # 失敗しました。トランスクリプトを参照してください。
ビジネスカジュアルBootstrapテーマのインストール
$ cd
$ git clone https://github.com/StartBootstrap/startbootstrap-business-casual.git
Cloning into 'startbootstrap-business-casual'...
remote: Enumerating objects: 920, done.
remote: Counting objects: 100% (273/273), done.
remote: Compressing objects: 100% (114/114), done.
remote: Total 920 (delta 141), reused 258 (delta 132), pack-reused 647
Receiving objects: 100% (920/920), 10.98 MiB | 12.71 MiB/s, done.
Resolving deltas: 100% (492/492), done.
$ cd /var/www/bcas.metalvps.com/
$ mv index.html index-original.html
$ cp -pr ~/startbootstrap-business-casual/dist/* .
$ ls
about.html assets css index-original.html index.html js products.html store.html
$
ローカルのラップトップで表示されるビジネスカジュアルテーマ
