環境構築2022
私物MBPを初期化したので、環境構築をメモする
- node環境を整える
- Docker環境を整える
-
アプリのインストールリスト
- 定期的に更新していく
-
zsh設定
- 定期的に更新していく
✅ node環境を整える
- anyenv + nodenvで整える
まずはhomebrewをインストールする
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
$ brew -v
Homebrew 3.4.9
Homebrew/homebrew-core (git revision 23f83804493; last commit 2022-05-02)
anyenvのインストール
brew install anyenv
anyenv init
anyenv install --init
echo 'eval "$(anyenv init -)"' >> ~/.zshrc
$ anyenv -v
anyenv 1.1.4
anyenvのアップデート用コマンドを追加
mkdir -p ~/.anyenv/plugins
git clone https://github.com/znz/anyenv-update.git ~/.anyenv/plugins/anyenv-update
nodenvのインストール&nodeのインストール
anyenv install nodenv
nodenv install 16.15.0
nodenv global 16.15.0
$ node -v
v16.15.0
yarnが欲しくなると思うので、yarnをインストール
npm i -g yarn
取り敢えず、nodeの動く状態にはできた🎉
yarnのインストール方法だけ何がいいのか分からない...
調べていたら、
というプラグインを入れることでnodenvでnodeをインストールするタイミングでyarnを一緒に入れてくれるようになるらしい。プロジェクトに .node-version
が存在する場合、 nodenv install
で対象のnodeをインストール可能だが、
その際に nodenv-yarn-install
は実行されていなさそう。
nodenv install {version}
このコマンドの時には問題なく対応するyarnがインストールされている。
nodenv install
でも対応するyarnがインストールされるようになってほしい...
✅ Docker環境を整える
- lima + Docker環境にしたい
参考予定
-
https://zenn.dev/matsukaz/articles/31bc31ff1c54b4#macosのファイルディスクリプタの上限の引き上げ
こちらに書かれている通りにファイルディスクリプタの上限引き上げを行った
Limaのインストール
homebrewを使用してインストール
brew install lima
Limaで動かすDockerのVMのyamlを作成。
リポジトリのexamplesに入っているdocker.yamlをベースに使用。
このファイルのmount部分を以下に修正し
mounts:
- location: "~/workspace"
writable: true
下記を追記。
cpus: 2
memory: "8GiB"
disk: "100GiB"
ssh:
localPort: 60006
loadDotSSHPubKeys: true
上記のyamlファイルを ~/workspace/docker/docker.yaml
に置いた。
Limaで上記のVMを起動
lima start ~/workspace/docker/docker.yaml
DOCKER_HOSTを指定するために、下記を.zshrcに追記
export DOCKER_HOST=unix://$HOME/.lima/lima_sample/sock/docker.sock
docker CLIのインストール
brew install docker
brew install docker-compose
※docker-composeではなく、docker composeをインストールしようと思ったが、公式からバイナリでのインストール方法が見当たらなかったので、見つけ次第インストールし直す
上記でDockerは動くようになった🎉
Limaの使い方などは別途調べる。パフォーマンスについてとか、他のものとの違いなど。
LimaとVirtualBoxなどの違いもイマイチ分かっていない(brewでインストールできて楽に使えるとかくらいなのか?...)
追記
CPU数の確認などを行う時の参考
開発に使う系のアプリのインストール履歴も残しておきたい
取り敢えずインストール
- VSCode
- Chrome
- Postman
- The Unarchiver
CotEditor:ちょっとしたファイル編集に便利なエディタ
zshの設定を考える
今まではfishをなんとなくで使っていたが、zshを使いたい気分になったので、色々調べながらzshrcを設定していきたい
プロンプトにgitのアレコレ表示したい
参考:
他にzsh関係の参考記事
取り敢えずの.zshrc
# git
autoload -Uz vcs_info
setopt prompt_subst
zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' stagedstr "%F{magenta}!"
zstyle ':vcs_info:git:*' unstagedstr "%F{yellow}+"
zstyle ':vcs_info:*' formats "%F{cyan}%c%u[%b]%f"
zstyle ':vcs_info:*' actionformats '[%b|%a]'
precmd () { vcs_info }
# プロンプトカスタマイズ
PROMPT='[%B%F{red}%f%b%F{green}%~%f]%F{cyan}$vcs_info_msg_0_%f
%F{yellow}$%f '
# anyenv
eval "$(anyenv init -)"
# lima
export DOCKER_HOST=unix://$HOME/.lima/docker/sock/docker.sock
色々更新
- PATHの設定を追加
- gitの補完が効くように設定
typeset -U path PATH
path=(
/opt/homebrew/bin(N-/)
/opt/homebrew/sbin(N-/)
/usr/bin
/usr/sbin
/bin
/sbin
/usr/local/bin(N-/)
/usr/local/sbin(N-/)
/Library/Apple/usr/bin
)
# git補完設定
fpath=(
${HOME}/.zsh/completions
${fpath}
)
autoload -Uz compinit
compinit
# alias
alias ls='ls -G'
# git
autoload -Uz vcs_info
setopt prompt_subst
zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' stagedstr "%F{magenta}!"
zstyle ':vcs_info:git:*' unstagedstr "%F{yellow}+"
zstyle ':vcs_info:*' formats "%F{cyan}%c%u[%b]%f"
zstyle ':vcs_info:*' actionformats '[%b|%a]'
precmd () { vcs_info }
# プロンプトカスタマイズ
PROMPT='[%B%F{red}%f%b%F{green}%~%f]%F{cyan}$vcs_info_msg_0_%f
%F{yellow}$%f '
# anyenv
eval "$(anyenv init -)"
# lima
export DOCKER_HOST=unix://$HOME/.lima/docker/sock/docker.sock