Webサービス公開に必要なもの
Webサービスを公開するには、主に3つの要素が必要です:
- ドメイン名: サイトのアドレス(例: example.com)
- サーバー: アプリケーションを実行する環境
- SSL証明書: HTTPS通信のための証明書(次の記事で解説)
ドメイン名とは
ドメイン名は、インターネット上の住所のようなものです。IPアドレス(123.45.67.89のような数字)を人間が覚えやすい文字列に変換したものです。
ドメインの構造
https://www.example.com/
│ │ │
│ │ └─ トップレベルドメイン(TLD)
│ └──────── セカンドレベルドメイン(SLD)
└───────────── サブドメイン主なトップレベルドメイン(TLD)
- .com: 商用、最も一般的
- .net: ネットワーク関連
- .org: 非営利組織
- .jp: 日本
- .io: テック系で人気
- .app: アプリケーション向け
ドメイン取得サービスの選び方
主要なドメインレジストラ
1. お名前.com(国内最大手)
- ✅ 日本語サポート充実
- ✅ 価格が比較的安い
- ✅ キャンペーンが多い
- ⚠️ 更新時の価格上昇に注意
2. Google Domains
- ✅ シンプルなUI
- ✅ プライバシー保護が標準
- ✅ Google Cloudとの連携
- ⚠️
2023年にSquarespaceに売却
3. Cloudflare Registrar
- ✅ 最安値クラス
- ✅ プライバシー保護無料
- ✅ CDN・DNS機能が優秀
- ⚠️ 英語のみ
4. ムームードメイン
- ✅ 初心者向けで使いやすい
- ✅ ロリポップと連携
- ✅ サポート充実
選定のポイント
- 価格: 初年度だけでなく更新料金も確認
- DNS管理: 柔軟な設定が可能か
- Whois情報公開代行: 個人情報を隠せるか(重要)
- 移管のしやすさ: 他社への移行が可能か
ドメイン取得の手順(お名前.com例)
ステップ1: ドメインの検索
1. お名前.comにアクセス
2. 希望のドメイン名を入力
3. 取得可能かチェックドメイン名の選び方のコツ:
- 短く覚えやすい
- スペルが簡単
- ブランド名と一致
- 数字やハイフンは避ける(推奨)
ステップ2: オプション選択
- Whois情報公開代行: 必ず有効化(個人情報保護)
- ドメインプロテクション: 任意
- メールアドレス作成: 必要に応じて
ステップ3: 支払い
クレジットカードまたは銀行振込で支払います。初年度は数百円~2000円程度です。
ステップ4: DNS設定の準備
ドメイン取得後、DNSレコードを設定する必要があります(後述)。
サーバーの種類と選び方
主なサーバータイプ
1. 共用サーバー(レンタルサーバー)
- ✅ 安価(月500円~)
- ✅ 設定が簡単
- ⚠️ 性能制限あり
- ⚠️ カスタマイズ性が低い
向いている用途: WordPressブログ、小規模サイト
2. VPS(Virtual Private Server)
- ✅ root権限で自由にカスタマイズ
- ✅ 専用リソース保証
- ✅ 拡張性が高い
- ⚠️ Linux知識が必要
- 💰 月1000円~5000円程度
向いている用途: カスタムアプリ、Docker利用、本記事の対象
3. クラウドサーバー(AWS、GCP、Azure)
- ✅ 無限の拡張性
- ✅ 従量課金制
- ⚠️ 複雑で学習コストが高い
- 💰 使用量次第で高額に
向いている用途: 大規模サービス、エンタープライズ
推奨VPSサービス
1. ConoHa VPS(国内、初心者向け)
- ✅ 日本語サポート充実
- ✅ 時間課金対応
- ✅ SSD標準、高速
- ✅ テンプレート豊富
- 💰 512MB: 687円/月~
2. さくらのVPS(国内、老舗)
- ✅ 安定性が高い
- ✅ サポート充実
- ✅ スタートアップスクリプト
- 💰 512MB: 590円/月~
3. Vultr(海外、高性能)
- ✅ 世界中にデータセンター
- ✅ 時間単位の課金
- ✅ 高性能SSD
- ⚠️ 英語のみ
- 💰 $6/月~
4. DigitalOcean(海外、人気)
- ✅ シンプルなUI
- ✅ ドキュメント豊富
- ✅ Kubernetesサポート
- 💰 $6/月~
VPS契約の手順(ConoHa VPS例)
ステップ1: アカウント作成
1. ConoHa VPSサイトにアクセス
2. メールアドレスとパスワードで登録
3. SMS認証で本人確認
4. 支払い方法を登録ステップ2: サーバープラン選択
- メモリ: 最低1GB推奨(Dockerを使う場合は2GB以上)
- リージョン: 東京リージョン(日本向けサービスの場合)
- OS: Ubuntu 22.04 LTS推奨
ステップ3: rootパスワード設定
強力なパスワードを設定してください(英数字+記号、12文字以上)。
ステップ4: SSH鍵の登録(推奨)
パスワード認証より安全です。
# ローカルでSSH鍵ペアを生成
ssh-keygen -t ed25519 -C "your_email@example.com"
# 公開鍵をコピー
cat ~/.ssh/id_ed25519.pubコピーした公開鍵をConoHaの管理画面に登録します。
サーバーへの初回接続
SSH接続
# IPアドレスを確認(ConoHa管理画面)
ssh root@123.45.67.89
# 鍵認証の場合
ssh -i ~/.ssh/id_ed25519 root@123.45.67.89初期設定(セキュリティ対策)
# システムアップデート
apt update && apt upgrade -y
# 一般ユーザーの作成
adduser myuser
usermod -aG sudo myuser
# ファイアウォール設定
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
# rootログインの無効化(推奨)
# /etc/ssh/sshd_config を編集
PermitRootLogin no
PasswordAuthentication noDNS設定
ドメインとサーバーを紐付ける設定です。
Aレコードの設定
ドメインレジストラ(お名前.com等)の管理画面で:
タイプ: A
ホスト: @(またはwww)
値: 123.45.67.89(サーバーのIPアドレス)
TTL: 3600DNS反映の確認
# DNSの確認
dig example.com
# または
nslookup example.com反映には数分~数時間かかる場合があります。
Dockerのインストール
サーバーにDockerをインストールします。
# 古いバージョンの削除
apt remove docker docker-engine docker.io containerd runc
# 依存パッケージのインストール
apt install -y ca-certificates curl gnupg lsb-release
# Docker公式GPGキーの追加
mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# リポジトリの追加
echo "deb [arch=$(dpkg --print-architecture) \
signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null
# Dockerのインストール
apt update
apt install -y docker-ce docker-ce-cli containerd.io \
docker-compose-plugin
# 確認
docker --version
docker compose versionアプリケーションのデプロイ
方法1: Gitでクローン
# Gitのインストール
apt install -y git
# リポジトリのクローン
git clone https://github.com/yourusername/your-app.git
cd your-app
# Docker Composeで起動
docker compose up -d方法2: SCPで転送
# ローカルからサーバーへファイル転送
scp -r ./my_flask_app root@123.45.67.89:/opt/料金の目安
月額コスト例
- ドメイン: 100円~200円/月(.com の場合)
- VPS(2GB): 1,500円~3,000円/月
- SSL証明書: 無料(Let's Encrypt)
合計: 約2,000円/月でWebサービスを運用可能
トラブルシューティング
DNS設定が反映されない
- 設定から24~48時間待つ
- TTL値を短く設定する
- キャッシュをクリアする
サーバーに接続できない
- ファイアウォールの設定確認
- セキュリティグループの確認(クラウドの場合)
- SSHポート(22番)が開いているか確認
まとめ
この記事では、ドメイン取得からサーバー契約、初期設定までを解説しました。
学んだこと
- ドメインの選び方と取得方法
- VPSサービスの選定基準
- サーバーの初期セキュリティ設定
- DNS設定によるドメインとサーバーの紐付け
- Dockerのインストールとデプロイ
次のステップ
次の記事では、Let's EncryptでHTTPS化する方法を解説します。