MacBook Air セットアップ

MacBook Pro の調子が悪いので、Genius Bar に持って行こうかと。バックアップ取るのはどうでもなるが、修理中どうするかという問題があるので、MacBook Air に働いてもらうことにした。

インストール用の USB メモリを作成し、High Sierra をクリーンインストール。起動ディスクを APFS でフォーマットした後に、High Sierra をインストール。ほぼほぼデフォルトでインストールと初期設定。

インストール後、どこから作業をしたら良いのか悩みながら、セットアップを行う。

Xcode

Developer サイトから Xcode をダウンロード。拡張子は xip で GateKeeper で時間がかかるので、xattr -d com.apple.quarantine Xcode_9.4.1.xip して、拡張属性を削除。
その後、ダブルクリックで解凍する。

コマンドラインツール

“`
$ xcode-select –install
“`
しないと、MacPorts でヘッダが見つからないとか言われるので、やっておく。

MacPorts

この手順でインストール。

諸々

  • VisualStudio Code
  • Atom
  • CotEditor
  • SourceTree
  • Kaleidoscope

あたりを入れる。

Bootstrap

Bootstrap を使ってみようと思います。

Bootstrap はフロントエンドのコンポーネントライブラリ。いろいろやろうと思ったら Sass を使ったりするみたいですが、テキトーに使う(あまりカスタマイズ的なことは考えていない)ならそれほど面倒でもないかなと。

まずは、この HTML で Bootstrap を使ってみます。

CSS を読み込ませます(CDN にあるやつを使用)。<head> の中に

を追加。

次に JavaScript を読み込ませます。<body> の最後に以下を追加。

とりあえず、こんな感じになります。

注意点

<html> タグの lang 属性

これはちゃんとつけたほうが良いとのこと。つーか、つけるだろう、普通。

viewport を設定する。

Bootstrap はモバイルファーストなので <meta name=”viewport”> をちゃんと設定したほうが良い。

box-sizing の値

グローバルで box-sizing の値が content-box から border-box になっている。

ここまで、ほとんど Document のまま。

AWS でドメインをいろいろと

ムームードメインで取得したドメインを AWS の Route 53 で管理する。

Hosted Zone の作成

まず、Route 53 でゾーンをつくる。Route 53 のダッシュボードで「Hosted Zones」をクリック。「Create Hosted Zone」をクリックする。

Domain Name
使うドメイン名
Comment
適当なコメント
Type
Public Hosted Zone

と入力し、「Create」をクリック。NS レコードと SOA レコードがつくられる。NS レコードの Value をメモ。

ムームードメインの設定変更

ログインして、左側メニューのドメイン管理→ドメイン操作の中にある「ネームサーバ設定変更」をクリック。変更するドメインの「ネームサーバ設定変更」をクリックする。
「GMOペパボ以外 のネームサーバを使用する」を選択して、表示されたネームサーバ1~4に NS レコードのメモしたネームサーバを入力する。入力後、「ネームサーバ設定変更」をクリック。確認のポップアップで処理を承認する。
ネームサーバの設定を変更しましたが表示されたら完了。

ここまでで、とりあえずベースの設定が完了。あとは必要なレコードを Route 53 に登録していく。

curl コマンド

古い API の動作確認をするので、curl の使い方をメモしておく。

$ curl [opts] [url]

基本はこんな感じ。

オプション

$ curl -X <メソッド>

HTTP のメソッドを指定。デフォルトは GET。POST だとか PUT だとか DELETE だとかを指定する。

$ curl --data-urlencode <データ>

URL エンコードしてデータを送るとき(Content-Type が application/x-www-form-urlencoded のとき)に使う。

他にもあれば追加しよう。

早めにやりたいこと ~ VVV、node.js と npm、postfix と dovecot など

やりたいことが溜まってきた。

Varying Vagrant Vagrants

VVV と呼ばれているもの。WordPress をちゃんといぢれるようにならなければ。

node.js と npm

まだ node.js を使いこなせているとは言えない。node モジュールをつくるとかもきちんとできるように。

postfix と dovecot

複数のドメインを収容するメールサーバを。

とりあえず、忘れないように。そして、自分を追い込む。(笑)

nodist

新しいノート PC の環境を整えているが、node.js をどう設定してよいか調べてみた。

nodist というのが結構使われているという感じだった。Ubuntu とか MacOS なら anyenv でやっていたのだけれど、Windows だけ違うというのが今ひとつだけど、扱いやすく情報が多いのが良い。

ということで、ここからダウンロードして、インストールする(今は v0.8.8 だった)。
デフォルトでは C:\Program Files (x86)\nodist にインストールするようになっていたが、いろいろなバージョンが入るはずなので、C:\nodist に入れる。で、実行すると 7.2.1 が入っているらしい。

> nodist
(x64)
> 7.2.1 (global: v7.2.1)

最初は 7.2.1 が入っているようだ。

>nodist dist

上記で、インストールできるバージョンを一覧表示。目的は Lambda の開発なので、8.10 6.10.3 4.3.2 あたりをインストールしておく。デフォルトは 6.10.3 にしよう。

> nodist + 4.3.2
> nodist + 6.10.3
> nodist + 8.10.0
> nodist 6.10.3

で設定。

あとはいろいろ使って覚えていく。

Windows の PackageManagement

新しいノート PC に諸々のソフトウェアをインストールするのに PackageManagement を使ってみる。

PowerShell で操作するが、「管理者」で立ち上げる必要がある。

Set-ExecutionPolicy RemoteSigned -Scope Process を実行して、ローカルのスクリプトと、リモートなら署名されているスクリプトを実行できるようにする。

Find-PackageProvider でパッケージプロバイダの一覧。Get-PackageProvider で設定済みのパッケージプロバイダ一覧。この操作中に nuget というプロバイダを入れろと言われたので追加した。
Find-Package -Name Firefox すると、そんなのないと言われる。

あと、chocolatey というプロバイダを追加する。Install-PackageProvider ChocolateyGet で追加。chocolatey の方は使わない方が良いようです。途中で、

Choco.exe is required to continue
ChocolateyGet is built on Choco.exe. Do you want ChocolateyGet to install Choco.exe from
‘https://chocolatey.org/install.ps1’ now?
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は “Y”): y

と聞かれたので Y で進めた。
これで Find-Package -Name Firefox でちゃんと情報が出るようになる。

実際にインストールを行う。

> Find-Package -Name “*chrome*” -Provider ChocolateyGet

Name Version Source Summary
—- ——- —— ——-
GoogleChrome 66.0.3359.18100 https://www.c…
chromium 66.0.3359.181 https://www.c…
google-chrome-x64 47.0.2526.81 https://www.c…
adblockpluschrome 1.12.4 https://www.c…
selenium-chrome-driver 2.38 https://www.c…
<SNIP!>
secureshell-chrome 0.8.43 https://www.c…
google-play-music-chrome 1.390.0 https://www.c…
windows-defender-browser-pr… 1.62 https://www.c…
chrome-remote-desktop-host 1.0 https://www.c…
dropbox-for-gmail-chrome 1.1.6 https://www.c…

たくさん出てきたが、GoogleChrome を入れてみる。

> Install-Package -Name GoogleChrome -Provider ChocolateyGet

パッケージは、信頼済みとマークされていないパッケージ ソースから取得されています。
‘https://www.chocolatey.org’ からソフトウェアをアンインストールしますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は “N”): y

Are you sure you want to perform this action?
Installing package ‘GoogleChrome’. By Installing you accept licenses for the package(s). The package possibly needs to
run ‘chocolateyInstall.ps1’.
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は “Y”): y

Name Version Source Summary
—- ——- —— ——-
GoogleChrome v66.0.3359.18100 https://www.c…

完了。スタートメニューにも追加されている。大丈夫みたいだ。

入れたものリスト

  • GoogleChrome
  • jdk8
  • 7zip.install
  • git.install
  • skype
  • adobereader
  • firefox
  • XnViewMP.install

AWS Cloudfront のキャッシュ生存期間を変更する

AWS Cloudfront のキャッシュの生存期間を変更する。

CloudFront Distributions から Distribution をクリックして、開いた画面で Behaviors タブを選択。Create Behavior をクリックして開いた画面で設定を作成する。

この画面の、Path Pattern と Object Caching と Minimum TTL、Maximum TLL、Default TTL を設定する。

Path Pattern は「hoge/*」の場合、s3 object の key が「hoge/」で始まるものに対しての設定になる。例えば「hoge/fuga/image.png」など。

Object Caching を Customize にして Minimum TTL・Maximum TLL・Default TTL を設定する。300 と入力すると 300 秒で 5 分。

注意点としては、Behavior の並び順。上から評価されて、最初にかかったものが適用されるようである。

AWS Simple Email Service でメールを受信してみる

AWS のドキュメント(Receiving Email with Amazon SES)を読みながら Simple Email Service (SES) でのメール受信を試してみた。

ドキュメントを自分のドメインに置き換えて進めていくが、Step 3: Set up a Receipt Rule の中で、キャプションが「Create a Receipt Rule」とあったが、実際は「Create Rule」という違いがあった。catchall みたいなことをするということが書かれていたので、画面が違うのかとちょっと迷った。

とりあえず、catchall と適当なアドレスを設定して試してみたが、ちゃんと S3 に保存された。

準備 OK!