独自のサーバーを素早く構築する方法の詳細なチュートリアル(Java 環境)

独自のサーバーを素早く構築する方法の詳細なチュートリアル(Java 環境)

1. サーバーの購入

1. 私はAlibaba Cloudのサーバーを選択しました。学生向けで月額9.5元です。BaiduでAlibaba Cloudを検索し、右上隅をクリックしてログインします。AlipayでQRコードをスキャンしてログインすることをお勧めします。これは迅速で便利です。 Alibaba Cloudの公式サイトにはたくさんの情報があります。ログイン後、長い間探しましたが、学生用サーバーを販売している場所を見つけることができませんでした。最終的に、相談中にこのWebサイトhttps://promotion.aliyun.com/ntms/campus2017.htmlを見つけました。購入するときは、学生認定を受ける必要があります。彼の要件に段階的に従ってください。認定には数時間かかります。学生でない場合は、直接ECSサーバーを購入できます。ホームページでECSサーバーの購入アドレスを確認できますが、学生サーバーよりもはるかに高価です。 ここでは、プリインストール環境の選択についてお話ししたいと思います。ほとんどのサーバーは Linux システムであり、Linux の中で CentOS が最も広く使用されているため、CentOS システムを選択し、次にアプリケーション イメージを選択することをお勧めします。アプリケーション イメージの機能は、主に MySQL、Apache、Tomcat などのサーバー環境をプリインストールするのに役立ちます。一部のアプリケーション イメージでは、サーバーの操作を容易にするためにサーバー管理パネルも提供されます。アプリケーション イメージはオプションです。サーバーをすばやく構成したいだけの場合は、非常に便利な Baota Linux パネルをインストールすることをお勧めします。Linux の使い方を学習したい場合や、すでに Linux の使い方を知っている場合は、アプリケーション イメージを無視して手動で構成できます。勉強するなら、場所の選択は重要ではなく、近くの場所を選ぶことができます。

2. サーバーの購入に成功したら、Alibaba Cloud ホームページの右上隅にあるコンソールに入ります。コンソールのサイドバーに、学生サーバーである esc サーバーまたは軽量サーバーがあります。クリックして入ると、購入したサーバーが表示されます。サーバーの IP アドレスは右下隅にあり、次に使用されます。

2. サーバー構成

1. まず、サーバーに接続するために必要なリモート接続のルート パスワードの設定をクリックします。

2. 次に、ファイアウォールの [ルールの追加] をクリックしてポートを開きます。ポートが開かれた後にのみ、他のユーザーがサーバー上のプログラムまたはサービスにアクセスできるようになります。これは自分の研究に使用しているので、セキュリティ上の問題はありません。便宜上、すべてのポートを開きました。ポート 21、22、443、8080 のみを開くこともできます。Baota Linux を使用している場合は、ポート 8888 も開く必要があります。

3. サーバー環境を手動で構築する

サーバーが利用可能になりましたが、どのように使用すればよいですか?コマンドラインを使用して手動で環境を構築する場合は、Linux コマンドをある程度理解しておくことをお勧めします。Linux コマンドを使用して環境を構築したくない場合は、Baota Linux パネルをインストールして、直接 4 番目の部分に進んでください。環境構築を迅速かつ簡単に完了し、パネルを使用してサーバーを制御できます。 Docker について学び、それを使用して環境設定を完了したい場合は、パート 6 を参照してください。

1. ツールの準備

サーバーに接続するには、2 つのソフトウェアが必要です。1 つは Xshell と呼ばれ、サーバーにリモート接続するために使用されます。もう 1 つは Xftp と呼ばれ、サーバーと自分のコンピューター間でファイルを転送するために使用されます。これらの 2 つのソフトウェアは、Baidu から直接ダウンロードすることも、360 宝庫からダウンロードすることもできます。すでに git がインストールされている場合は、git または Mac に付属のコマンドライン ツールを使用して、ssh と scp を使用してサーバーに接続し、ファイルを転送することもできます。

2.Xshell接続

Xshell の使い方は非常に簡単です。まず、サーバーの IP アドレスを入力します。サーバーの IP アドレスは、Alibaba Cloud サーバー リストの右下隅にあります。[接続] をクリックし、ユーザー名として root を入力し、パスワードとして先ほど設定した root パスワードを入力します。画面に「welcome to alibaba cloud」と表示されたら、正常に接続したことを意味します。

3. Xftp接続

Xftp のログインは Xshell のログインと似ています。サーバーの IP を入力し、ユーザーは root と入力し、次に root パスワードを入力します。ログインに成功すると、左側のフレームは自分のコンピューター上のファイル、右側はサーバー上のファイルになります。左右にドラッグしてファイルをアップロードおよびダウンロードします。

4. JDKのインストール

これら 2 つのソフトウェアをインストールしたら、サーバー環境の設定を開始できます。学習用のシンプルな環境であり、同時実行性が高くないため、nginx、apache、redis は使用しません。使用する Java 環境は、シンプルな tomcat+mysql です。環境構築を完了するには、Xshell を使用する必要があります。 tomcat をインストールする前に、まず jdk をインストールする必要があります。Linux システムへの jdk のインストールは非常に簡単です。私は jdk バージョン 1.8 を使用します。コマンド yum -y install java-1.8.0-openjdk.x86_64 を実行します。画面に [Complete] と表示されたら、インストールが成功したことを意味します。次に、java -version を実行すると、現在の Java バージョンに問題がないことが示されます。

5.Tomcatのインストール

次は tomcat のインストールです。yum には tomcat ソースがないので、wget を使用してダウンロードする必要があります。まず、cd /opt で opt ディレクトリに切り替えます。

wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz コマンドを実行します。wget の後のアドレスは公式サイトのダウンロード アドレスです。ダウンロードできないという学生もいます。その場合は、インターネットで他の tomcat ダウンロード アドレスを見つけて変更することができます。

実行が完了したら、tomcat の圧縮パッケージを opt ディレクトリにダウンロードし、コマンド tar xzf apache-tomcat-8.5.32.tar.gz を実行して圧縮パッケージを解凍します。

これで、Xftp でこれら 2 つのファイルが表示されます。解凍したファイルをクリックして F2 を押すと、名前を tomcat8.5 に変更できます。これは、コマンド ラインを使用して操作するのに便利です。または、コマンド mv apache-tomcat-8.5.32 tomcat8.5 を実行して名前を変更することもできます。

/opt//tomcat8.5/bin/startup.sh コマンドを実行して tomcat を実行します。tomcat started と表示されれば、起動は成功です。

netstat -anp | grep 8080と入力してポート8080を表示することもできます。

この時点で、インターネットからアクセスできるようになります。ブラウザでサーバーの IP アドレスとポート番号に直接アクセスします (例: http://39.107.104.52:8080/)。アクセスが成功した場合、Tomcat が設定されたことを意味します。

6. mysqlのインストール

yum の mysql リソースに問題があるため、yum をそのまま使用することはできません。 yum を使用する前に、他のコマンドを使用して MySQL コミュニティ バージョンを取得する必要があります。コマンド wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm を実行し、rpm -ivh mysql-community-release-el7-5.noarch.rpm を続けて実行します。

この時点で、yum 経由でインストールできます。yum install mysql mysql-server mysql-devel -y を実行し、最後に complete と表示され、インストールが成功したことを示します。

インストールが成功したら、systemctl start mysql.service を使用して MySQL サーバーを起動し、その後、netstat -anp|grep 3306 コマンドを実行して MySQL が起動しているかどうかを確認できます。

yum でインストールされた MySQL の管理者アカウントにはパスワードがありません。ここでは、コマンドを使用してパスワードを admin に設定します。コマンド mysqladmin -u root password admin を実行して、他の値に設定することもできます。

注意: 警告メッセージはセットアップが失敗したことを示すものではなく、パスワードが公開されたことを通知するものなので、後ろにいる人に注意してください。

7. プロジェクトとデータベースのアップロード

mysql -uroot -padmin コマンドでデータベースにログインします。パスワードは admin です。別のパスワードを設定している場合は、ここで独自のパスワードに変更してください。CREATE DATABASE xxx DEFAULT CHARACTER SET utf8; コマンドでデータベースを作成します。データベースに入った後に実行したコマンドの後にセミコロンを追加することを忘れないでください。xxx はデータベース名です。作成時に作成したいデータベース名に変更します。作成後、show databases; を実行して作成したデータベースを確認します。多くの場合、データベースはローカルで作成され、その後サーバーにインポートされます。まず、Xftp を使用してデータベース ファイルをサーバーに転送する必要があります。データベースは、mysql -u root -padmin --default-character-set=utf8 xxx < /home/xxx.sql コマンドでインポートできます。ここで、xxx はデータベース名、/home/xxx.sql はデータ ファイルのパスです。インポート操作が完了したら、mysql -uroot -padmin コマンドを使用してデータベースに再度ログインし、use xxx; を実行してから show tables; を実行して、インポートされたデータベースを表示します。

プロジェクトのアップロードは比較的簡単です。プロジェクトを Tomcat の webapps ディレクトリに直接配置するか、プロジェクトを war ファイルにパッケージ化して配置するだけです。Tomcat を再起動すると、war ファイルが自動的に解析されます。 Tomcat をシャットダウンするコマンドは /opt/tomcat8.5/bin/shutdown.sh です。シャットダウン後、再度開いて再起動を完了します。

この時点で、外部ネットワーク (例: http://39.107.104.52:8080/shop/) 上のプロジェクトにアクセスできます。

これでサーバーのセットアップが完了しました。サーバーをさらに最適化して、Web サイトのアクセス速度とサーバーのパフォーマンスを向上させる場合は、5 番目の部分である Nginx の使用を参照してください。nginx を使用するもう 1 つの利点は、Web サイトをバックアップせずにポート 8080 を削除できることです (通常、Web サイトをバックアップしていない場合は、ポート番号を削除して Web サイトのデフォルトのポート 80 を使用することはできません)。たとえば、http://39.107.104.52:8080/shop を http://39.107.104.52/shop に変更できます。

4. Baota Linuxパネル環境の構築

1. Baotaパネルにログイン

Baotaパネルの使い方は比較的簡単です。まず、コンソールからサーバー管理ページに入り、アプリケーションの詳細を入力して、「コピー」をクリックします。

次にリモート接続します。接続が成功したら、右クリックしてコピーした内容を貼り付け、Enterキーを押して実行すると、Pagodaパネルのパスワードが表示されます。それをコピーします。

リモート接続を終了し、パネルのホームページ アドレスをクリックします。

ユーザー名は admin で、パスワードはリモート接続後にコピーしたパスワードです。

2. ソフトウェアのインストールと設定

ログインに成功したら、サイドバーのソフトウェア管理を見つけます。

tomcat と mysql をインストールします。tomcat バージョン 8.5 と mysql バージョン 5.7 をインストールしました。

インストールを待つ間に、まずポートを開きます。サイドバーの「セキュリティ」をクリックし、ポート 8080 を解放します。

インストールが完了すると、外部ネットワークから Tomcat ページにアクセスできるようになります。 http://39.107.104.52:8080/ にアクセスし、IP アドレスを自分のサーバーの IP アドレスに置き換えます。

データベースのアップロード

サイドバーからデータベースを入力し、「データベースの追加」をクリックします。パスワードはランダムに生成することも、自分で設定することもできます。

正常に追加されたら、「インポート」をクリックして、ローカル SQL データベース ファイルをサーバーにアップロードします。

プロジェクトをアップロード

ソフトウェア管理で、tomcat のファイルの場所をクリックして、tomcat に入ります。

tomcat の webapps フォルダを開き、左上隅の [アップロード] をクリックし、プロジェクト ファイルまたはプロジェクトの war パッケージを配置して、tomcat を再起動します。

この時点で、外部ネットワーク上のプロジェクトにアクセスできます (例: http://39.107.104.52:8080/shop/)。

これでサーバーのセットアップが完了しました。サーバーをさらに最適化して、Web サイトのアクセス速度とサーバーのパフォーマンスを向上させる場合は、5 番目の部分である Nginx の使用を参照してください。nginx を使用するもう 1 つの利点は、Web サイトをバックアップせずにポート 8080 を削除できることです (通常、Web サイトをバックアップしていない場合は、ポート番号を削除して Web サイトのデフォルトのポート 80 を使用することはできません)。たとえば、http://39.107.104.52:8080/shop を http://39.107.104.52/shop に変更できます。

5. サーバーパフォーマンスの最適化(Nginxの使用)

Nginx はリバース プロキシ サーバーです。nginx を使用すると、動的および静的分離と負荷分散を実現できます。動的および静的分離とは、ユーザー要求を処理するときに、nginx が静的要求を処理し、tomcat が動的要求を処理することを意味します。これにより、tomcat の負荷が軽減され、tomcat は動的要求の処理に集中できるようになります。負荷分散とは、nginx が複数の tomcat、つまり tomcat クラスターに同時に接続し、ユーザーの動的リクエストを各 tomcat にバランスよく転送できることを意味します。では、Nginx はどのように使用すればよいのでしょうか?

1. パゴダパネルを使用してNginxをインストールして設定する

ソフトウェア管理で Nginx を見つけてクリックしてインストールします。ここではバージョン 1.14 をインストールしました。

インストールが完了したら、nginx を設定する必要があります。nginx 設定をクリックして設定ページに入り、設定変更をクリックして、元の設定ファイルをすべて削除し、次のように変更します。

ユーザー www www;
ワーカープロセスは自動です。
error_log /www/wwwlogs/nginx_error.log クリット;
pid /www/server/nginx/logs/nginx.pid;
ワーカー_rlimit_nofile 51200;
 
イベント
 {
 epoll を使用します。
 ワーカー接続数 51200;
 multi_accept オン;
 }
 
http
 {
 mime.types を含めます。
		#luawaf.conf を含めます。
 
		proxy.conf をインクルードします。
 
 デフォルトタイプ アプリケーション/オクテットストリーム;
 
 サーバー名ハッシュバケットサイズ 512;
 クライアント_ヘッダー_バッファ_サイズ 32k;
 ラージクライアントヘッダーバッファ 4 32k;
 クライアントの最大ボディサイズは50mです。
 
 ファイル送信オン;
 tcp_nopush オン;
 
 キープアライブタイムアウト60;
 
 tcp_nodelay オン;
 
 fastcgi_connect_timeout 300;
 fastcgi_send_timeout 300;
 fastcgi_read_timeout 300;
 fastcgi_buffer_size 64k;
 fastcgi_buffers 4 64k;
 fastcgi_busy_buffers_size 128k;
 fastcgi_temp_file_write_size 256k;
		fastcgi_intercept_errors をオン;
 
 gzip オン;
 gzip_min_length 1k;
 gzip_バッファ 4 16k;
 gzip_http_バージョン1.1;
 gzip_comp_レベル2;
 gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
 gzip_vary オン;
 gzip_proxied 期限切れ、キャッシュなし、保存なし、プライベート認証。
 gzip_disable "MSIE [1-6]\.";
 
 limit_conn_zone $binary_remote_addr ゾーン=perip:10m;
		limit_conn_zone $server_name ゾーン=サーバーあたり:10m;
 
 server_tokens オフ;
 access_log オフ;
 
アップストリームTomcat{
 ip_ハッシュ;
 サーバー 39.107.104.52:8080;
 サーバー 39.107.104.52:8081;
 
}
 
サーバ
 {
 聞く 80;
 server_name ローカルホスト;
 インデックス index.html index.htm index.jsp;
 ルート /www/server/myadmin;
 
 
 #エラーページ 404 /404.html;
 enable-php.conf をインクルードします。
 位置 / {
 proxy_pass http://tomcats;
 
 }
 
 場所 ~ \.(gif|jpg|png)$ {
 有効期限は30日です。
 access_log オフ;
 ルート /www/server/myadmin;
 }
#SSL証明書検証ディレクトリ関連設定場所のワンクリックアプリケーション ~ \.well-known{
 すべて許可する。
 }
 
 
 アクセスログ /www/wwwlogs/access.log;
 }
/www/server/panel/vhost/nginx/*.conf を含めます。
}

この設定ファイルには、理解しておくべき部分が 2 つあります。ファイル内のアップストリーム tomcats は、tomcat アドレスです。これは、nginx が動的リクエストを受け取った後に転送するアドレスです。ここでは、Baota によってインストールされた tomcat に加えて、ポート 8080 と 8081 にそれぞれ別の tomcat を手動でインストールしました。tomcat の手動インストールについては、3 番目の部分の tomcat インストールを参照してください。手動でインストールしたくない場合は、ここに 1 つだけ書き込み、もう 1 つを削除することで、Nginx が動的と静的の分離のみを行うようにすることができます。ip_hash は、tomcat を変更した後のセッションの問題を防ぐために、ユーザー IP をバインドすることを指します。各 ip は 1 つの tomcat にしかアクセスできません。この文を削除してページを数回更新すると、異なる tomcat にアクセスできることがわかります。 server のルート /www/server/myadmin は、静的ファイルを保存するルート ディレクトリを指します。静的リクエストがあると、nginx はこのディレクトリ内のファイルを検索します。 location ~\.(gif|jpg|png)$ は、リクエストが .gif|.jpg|.png で終わる場合、静的ファイルと判定され、ルートディレクトリ内を直接検索することを意味します。それ以外のリクエストは tomcat に転送されます。もちろん、css、js などのファイルに .js や .css を追加することで、静的ファイルと判定することもできます。設定が完了したら、プロジェクトにアクセスできます。たとえば、http://39.107.104.52:8080/shop/ を http://39.107.104.52/shop/ に変更してアクセスできます。この時点で、.gif|.jpg|.png で終わるすべてのファイル リクエストが nginx によってインターセプトされるため、プロジェクト内の画像が消えていることがわかります。これらのファイルを nginx のルート ディレクトリに配置し、プロジェクト内の画像パスを変更する必要があります。たとえば、パス /picture/1.png は /www/server/myadmin/picture/1.png を参照します。ここでは、nginx の具体的な設定については詳しく説明しません。nginx に興味がある場合は、以下にメッセージを残していただければ、詳細なビデオ チュートリアルをお送りします。

2. Nginxを手動でインストールする

私は Baota Linux によってインストールされた Nginx を使用し、自分で Nginx を手動でインストールしなかったため、別のブログ https://www.jb51.net/article/189359.htm をお勧めします。興味のある友人はぜひ見てみてください。 Nginx の設定に関しては、上記に書いた内容を参考にしてください。

6. dockerのインストール

Docker を使用するには、CentOS カーネル バージョンが 3.10 以降である必要があります。このページの前提条件をチェックして、お使いの CentOS バージョンが Docker をサポートしているかどうかを確認してください。

1. ソフトウェアライブラリを更新する

yum アップデート -y

2. Dockerをインストールする

yum で docker をインストール -y

3. dockerサービスを起動する

サービスdocker開始

4. その他の関連コマンド

service docker restart // docker サービスを再起動します service docker stop // docker サービスを停止します

Mac でシステムをリセットして再度接続すると、次の状況が発生しました。

アクセスしたい IP アドレスに対して ssh-keygen -R を実行します。

詳細なチュートリアル(Java環境)を使用して、独自のサーバーをすばやく構築する方法に関するこの記事はこれで終了です。Javaサーバー環境の構築の詳細については、123WORDPRESS.COMの以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMを応援してください。

以下もご興味があるかもしれません:
  • Javaでサーバー環境を取得する例の詳細な説明
  • Java環境変数とTomcatサーバー構成の詳細な説明

<<:  MySQLストアドプロシージャの原理と使用法の詳細な説明

>>:  JavaScript フレームワーク デザイン パターンの詳細な説明

推薦する

ウェブページのテキストデザインは、服を着た賢い女の子のようであるべきだ

<br />「この世に醜い女性はいない、あるのは怠惰な女性だけだ」これは女性の美のバイブ...

海外でダウンロードできる25個の新鮮で便利なアイコンセット

1. Eコマースアイコン2. アイコンスイーツ2 3. 携帯電話アイコンパック4. 旗アイコンセット...

Vue マルチ選択リスト コンポーネントの詳細な説明

マルチ選択は、すべてのオプションを一覧表示し、ユーザーが Ctrl/Shift キーを使用して複数選...

Vueはドラッグプログレスバーを実装します

この記事では、ドラッグプログレスバーを実現するためのVueの具体的なコードを例として紹介します。具体...

Docker 接続 MongoDB 実装プロセスとコード例

コンテナが起動した後まず管理者にログインして新しいユーザーを作成してください $ docker ex...

Vueはログインタイプの切り替えを実装します

この記事では、ログインタイプの切り替えを実装するためのVueの具体的なコードを例として紹介します。具...

Vue v-for ループを書く 7 つの方法

目次1. v-forループでは常にキーを使用する2. 特定のスコープ内でv-forループを使用する3...

MySQL 8.0.15 winx64 のインストールと設定方法のグラフィックチュートリアル (Windows の場合)

この記事では、MySQL 8.0.15 winx64のインストールと設定方法を参考までに紹介します。...

Vueは質問応答機能を実装する

1. リクエスト回答インターフェース2. ユーザーの回答が正しいかどうかを判断します。回答が正しい場...

MySQLプリコンパイル機能の詳細な説明

この記事では、MySQLのプリコンパイル機能について紹介します。具体的な内容は以下のとおりです。 1...

CSS で TikTok テキスト揺れエフェクトを実装する例

日々の開発において、フロントエンドの学生はアニメーションやデザインについてよく議論します。デザイナー...

JavaScript における 3 つの for ループ ステートメントの使用の概要 (for、for...in、for...of)

序文JS に触れるすべての開発者は、必然的に for ループを扱うことになります。結局のところ、fo...

Dockerコンテナ接続実装手順の分析

一般的に言えば、コンテナが起動した後、ポート マッピングを通じてコン​​テナが提供するサービスを使用...

コードブロックのハイライトをコピーして表示できる js プラグイン highlight.js + clipboard.js 統合

主に2つの側面から: 1. ハイライト/改行2. コードのコピーボタンこれら両方には既製のプラグイン...

HarborをベースにしたDocker専用倉庫の構築方法

目次1. ハーバーの紹介1. ハーバーが民間倉庫を建設3. 港湾の維持管理4. Harborユーザー...