Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第8回 社内勉強会 「サーバーを構築してWebページを公開してみよう」

第8回 社内勉強会 「サーバーを構築してWebページを公開してみよう」

Wemotion, Inc

March 04, 2023
Tweet

More Decks by Wemotion, Inc

Other Decks in Technology

Transcript

  1. OS標準のクライアント
 Windows: PowerShell / Mac: Terminal
 
 サーバーへの接続方法
 ssh {UserName}@{HostName}

    -p {Port}
 
 UserName: rootなど接続時のユーザーネーム 
 HostName: 接続サーバーのIPアドレス等 
 Port: 接続ポートが指定されている場合は-pでポート指定 
 sshの使い方
 例
 ssh [email protected]
  2. サーバーのスペック
 - IP: 各自違います
 - CPU: 1Core
 - メモリ: 512MB


    - SSD: 30GB
 - OS: CentOS Stream9
 - rootパスワード: 各自違います
 ハンズオンで使用するサーバー
 ConohaVPSを使用
 時間課金で1,000円弱/月〜 
 参考: https://www.conoha.jp/vps/ 

  3. サーバーを構築してWebページを公開し、
 ブラウザからhttpでアクセス出来るようPort解放を行う
 
 1. SSHでサーバーに入る
 2. Nginxのインストール
 3. Nginxの設定
 4.

    公開するページのHTMLをローカルPCからサーバーに転送(scp)
 5. httpポート解放
 6. ブラウザからのアクセス確認
 サーバーでの作業概要

  4. 付与しているサーバーのIPを使用し、rootユーザーでSSH接続してください。
 
 ssh root@IPAddress
 
 接続が成功しているか確認する際は、 hostname コマンドがオススメです。
 実行してサーバーIPが表示されれば接続成功となります。
 


    hostname
 
 SSHでサーバーに入る
 ※ 実務で使用する際は、 
 rootユーザーの認証, パスワード認証は禁止し、 
 ssh時には専用ユーザー&公開鍵での認証を推奨します 

  5. CentOSでは一般にパッケージインストールに yum コマンドを使用します。
 
 必要なパッケージのインストール
 yum install yum-utils
 yum install

    https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
 yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
 
 確認されたら y を入力してEnter
 Nginxのインストール その1
 ※ サーバーでの作用になります 

  6. vimでNginxインストール用の定義を作成します。 
 
 vi /etc/yum.repos.d/nginx.rep o
 
 記載内容: https://github.com/wemotion-inc/nginx-sample/blob/main/nginx.repo 


    
 vimの操作方法
 編集方法: i を押すとINSERTモードで編集可能になります 
 保存方法: : を押してコマンドモードにし、 wq と入力してEnterで保存して終了 
 Nginxのインストール その2
 ※ サーバーでの作用になります 

  7. サーバー再起動時にも自動で起動されるようにする
 systemctl enable nginx
 
 Nginxの起動
 systemctl start nginx
 


    停止させる場合は stop / 起動状態の確認は status
 Nginxのインストール その4
 ※ サーバーでの作用になります 

  8. ローカルとサーバーでファイルをやりとりする場合は、
 一般的には scp コマンドを使用します。
 
 使用方法
 scp {FileName} {UserName}@{HostName}:{FilePath}
 


    例(実行前に cd ~/Desktop でDesktopに移動してください) 
 scp index.html [email protected]:/root
 
 HTMLをサーバーに転送
 ※ ローカルでの作用になります 

  9. HTMLの転送が完了したら再び ssh でサーバーに接続し、
 ファイルが転送されているか確認しましょう。
 
 ls コマンドで index.html が表示されれば成功しています。
 


    確認ができたらNginxのルートディレクトリに index.html をコピーします
 cp index.html /usr/share/nginx/html/index.html
 ※ デフォルトのhtmlをoverwriteするため y で回答
 サーバーでファイル確認
 ※ サーバーでの作用になります 

  10. 以下のコマンドでhttpで80ポートを解放し、reloadで反映します。
 firewall-cmd --add-port=80/tcp --zone=public --permanent
 firewall-cmd --reload
 
 設定確認で 80/tcp

    が追加されています。
 firewall-cmd --list-all
 httpポートの解放
 ※ サーバーでの作用になります