📠

ubuntu-serverをセットアップする

に公開

これなに?

windowsを爆破してubuntu-serverを入れたのでそいつをいい感じに設定する

サクッと設定するためのものなので、あとは好みで調整しちゃってください

おすすめがあったら教えていただけると嬉しいです

よく使うツールを突っ込む

早めにGitHubに公開鍵を設定しちゃう

mkdir -p ~/.ssh/github
ssh-keygen -t ed25519 -C "hoge@gmail.com"
# 下とか好きに登録する。デフォでも全く問題ない
# ~/.ssh/github/id_ed25519

# パスフレーズは入れない方が楽

ssh-add ~/.ssh/github/id_ed25519

cat /home/ubuntu/.ssh/github/id_ed25519.pub

# 公開鍵をGitHubに登録する

ssh -T git@github.com
# Hi koinunopochi! You've successfully authenticated, but GitHub does not provide shell access.

nodeとpnpm

# ==== Raspberry Pi OS Lite 用 Node.js + pnpm セットアップ(2025-10-31版)====

# 事前に curl / git が無い環境なら有効化
sudo apt update
sudo apt install -y curl git ca-certificates

# nvm を最新安定版 v0.40.3 で導入
export NVM_VERSION="v0.40.3"
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/${NVM_VERSION}/install.sh | bash

# 現セッションに nvm を読み込む(XDG_CONFIG_HOME を考慮)
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
. "${NVM_DIR}/nvm.sh"

# Node.js Active LTS (22.21.1) をインストールし既定に設定
export NODE_LTS_VERSION="22.21.1"
nvm install "${NODE_LTS_VERSION}"
nvm alias default "${NODE_LTS_VERSION}"
nvm use default

# corepack と pnpm を最新化
corepack enable
corepack prepare pnpm@latest --activate

# 動作確認
node -v   # v22.21.1 が表示されれば OK
pnpm -v   # 最新バージョンが表示されれば OK


cat <<'EOF' >> ~/.bash
# >>> nvm setup (2025-10-31) >>>
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "${NVM_DIR}/nvm.sh" ] && \. "${NVM_DIR}/nvm.sh"
[ -s "${NVM_DIR}/bash_completion" ] && \. "${NVM_DIR}/bash_completion"
# <<< nvm setup <<<
EOF

source ~/.bash

tailscalseを入れる

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
tailscale ip -4

Goを入れる

# 1. goenvをクローン
git clone git@github.com:syndbg/goenv.git ~/.goenv

# 2. 環境変数を設定(.bashrcまたは.zshrcに追加)
echo 'export GOENV_ROOT="$HOME/.goenv"' >> ~/.bashrc
echo 'export PATH="$GOENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(goenv init -)"' >> ~/.bashrc

# 3. 設定を反映
source ~/.bashrc

# 4. goenvが動作するか確認
goenv --version

# インストール可能なバージョン一覧
goenv install -l

# 特定バージョンをインストール
goenv install 1.21.5

# グローバルデフォルトを設定
goenv global 1.21.5

# 確認
go version
# プロジェクトディレクトリで
cd /path/to/your/project
goenv local 1.21.5  # .go-versionファイルが作成される

docker install

https://docs.docker.com/engine/install/ubuntu/

# 古いのは削除
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

# 最新バージョンを入れる
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# ステータスを確認
sudo systemctl status docker

# 自動で立ち上がらない場合は
sudo systemctl start docker

# 試しに入れる
sudo docker run hello-world

https://docs.docker.com/engine/install/linux-postinstall

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world

Claude Codeを入れる

https://docs.claude.com/ja/docs/claude-code/setup#native-install-recommended

curl -fsSL https://claude.ai/install.sh | bash

よく使うコマンドを入れちゃう

sudo apt install jq

Discussion