OCI の Ubuntu 24.04 に各種クラウドの CLI や .NET 開発環境を整備してみた

OCI で Oracle Linux 9 を使ってみましたが、隣人がうるさいだけなのか、体感的に良くありませんでした。そこで Ubuntu 24.04 が OCI で使えるようになったので、各種クラウドの CLI や .NET 開発環境などを備忘録を兼ねて整備してみました。

自分がよくやる初期設定

cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="Ubuntu 24.04 LTS"

sudo su -

timedatectl set-timezone Asia/Tokyo

dd if=/dev/zero of=/.swapfile bs=128M count=16 # 2GB
chmod 600 /.swapfile
mkswap /.swapfile
swapon /.swapfile
swapon -s
echo "/.swapfile swap swap defaults 0 0" >> /etc/fstab

apt update

apt upgrade -y

sed -i 's/#Port 22/Port 8080/' /etc/ssh/sshd_config

systemctl daemon-reload

systemctl restart ssh.socket

ss -anlt

iptables -I INPUT -p TCP --dport 8080 -j ACCEPT

iptables-save

/etc/init.d/netfilter-persistent save
/etc/init.d/netfilter-persistent reload

reboot

自分がよくやる開発環境

# Azure CLI
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

az version

# AWS CLI
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

sudo apt-get install -y unzip

unzip awscliv2.zip

sudo ./aws/install

aws --version

rm -rf aws*

# GCP CLI
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg

echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

sudo apt-get update && sudo apt-get install -y google-cloud-cli

gcloud version

# Docker
sudo apt-get install ca-certificates curl gnupg

sudo install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" |   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

sudo docker run hello-world

sudo docker images

sudo usermod -aG docker $USER

exit

ssh -i ~/.ssh/pmpelab -p 8080 [email protected]

docker ps -a

docker ps -a | tail -n 1 | awk '{ print $1 }' | xargs docker rm

docker rmi hello-world

docker images

# .NET
sudo add-apt-repository ppa:dotnet/backports

source /etc/os-release

wget https://packages.microsoft.com/config/$ID/$VERSION_ID/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

rm packages-microsoft-prod.deb

sudo apt update

sudo apt-get install -y dotnet-sdk-6.0 dotnet-sdk-8.0

dotnet --list-sdks

# Azure Functions Core Tools
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg

sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg

sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-$(lsb_release -cs)-prod $(lsb_release -cs) main" > /etc/apt/sources.list.d/dotnetdev.list'

sudo apt-get update

sudo apt-get install azure-functions-core-tools-4

func --version

# Terraform
wget https://releases.hashicorp.com/terraform/1.5.5/terraform_1.5.5_linux_amd64.zip -O terraform.zip

unzip terraform.zip

sudo mv terraform /usr/local/sbin/

terraform -v

rm terraform.zip

タグ: , , , ,