・Indigoで新規インスタンスを生成
Ubuntu 24.04
2vCPU/2GB/40GB
・TeraTermからSSHアクセス
・Docker
1 2 3 4 5 6 7 |
sudo apt update sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt-get update sudo apt install docker-ce docker-ce-cli containerd.io docker --version |
・Docker Compose
1 2 |
sudo apt install docker-compose-plugin docker compose version |
・DNS設定
Azure>DNSゾーン>+子ゾーン
名前のところにサブドメインにしたい値を入れて、確認及び作成
作成したサブドメイン付きのドメインのレコードセットを編集
AレコードでVPSのIPアドレスを指定
・Caddy
1 2 |
sudo apt install -y caddy sudo vim /etc/caddy/Caddyfile |
1 2 3 4 5 |
ドメイン { reverse_proxy /notifications/hub localhost:3012 reverse_proxy localhost:8080 tls メールアドレス } |
1 |
sudo systemctl start caddy |
・Vaultwarden
1 2 3 |
sudo mkdir vaultwarden cd vaultwarden sudo vim docker-compose.yml |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden environment: - TZ=Asia/Tokyo env_file: - ./vaultwarden.env volumes: - ./vw-data:/data ports: - 8080:80 - 3012:3012 restart: always |
1 2 |
sudo vim vaultwarden.env ADMIN_TOKEN='40文字のランダム文字列' |
1 |
sudo docker compose up -d |
これでhttps://sub.domainでアクセスできる。
・ufw
1 2 3 4 |
sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw enable |
sudo vim /etc/default/ufw
IPV6=no
1 2 |
sudo ufw reload sudo ufw status |
・ssh
sudo vim /etc/ssh/sshd_config
・PasswordAuthentication
・ChallengeResponseAuthentication
・GSSAPIAuthentication
3つともnoへ
1 |
sudo service ssh restart |
・Dockerコマンドメモ
全てのコンテナ
sudo docker compose ps -a
全てのコンテナストップ
sudo docker stop $(sudo docker ps -q)
全てのコンテナ削除
sudo docker container prune
・Caddyメモ
caddy設定ファイル
1 2 3 |
sudo ls -la /var/lib/caddy/.local/share/caddy/acme/acme-v02.api.letsencrypt.org-directory/users/ ※表示されたメールアドレスを入力して実行 sudo cat /var/lib/caddy/.local/share/caddy/acme/acme-v02.api.letsencrypt.org-directory/users/メールアドレス/メールアドレス@より前.json |