Dockerコンテナでの静的ウェブサイトレイアウトの実装

Dockerコンテナでの静的ウェブサイトレイアウトの実装

サーバーの配置

数日間無料で使用できるクラウドサーバー(Alibaba Cloud、Huawei Cloud、Tencent Cloud)の使用をお勧めします。サーバーを購入した後、次のような問題が発生します。

ローカル コンピューターがサーバー ホストに ping を実行し、ping が失敗して要求がタイムアウトしたことを検出します。

管理サーバー インターフェイスでセキュリティ グループ列を見つけて、セキュリティ グループに入るときと出るときに icmp を追加する必要があります。 すべてを 1 回のクリックで追加することをお勧めします。


次に、ローカル コンピューターからサーバーに ping を実行できます。

Dockerのインストール

クラウドサーバーをセットアップした後、 apt-get update, apt-get upgradeを使用して情報を更新します。



次に、 dockerに入ると、次のエラーが発生します。


次に、通常のソフトウェアメソッドapt-get install docker.io, apt-get install docker.ceに従い、次の問題を発見しました。

パッケージ「docker-ce」にはインストール候補がありません

解決策は次のとおりです。

#docker ソースを追加します sudo echo "deb https://download.docker.com/linux/ubuntu zesty edge" > /etc/apt/sources.list.d/docker.list

#https の解析をサポート
apt-get install -y apt-transport-https ca-certificates curl software-properties-common

#GPG キーを追加 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

#リポジトリの場所を設定します。add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

再度実行すると次の結果が得られます。


次に、 docker run hello-worldと入力してインストール結果を確認します。

nginxのインストール

次のステップはapt-get install nginx


次のステップは、インストールの効果を確認することです。コマンドservice start nginxを入力し、ブラウザにサーバーの外部ネットワーク IP アドレスを入力して、nginx のデフォルト インターフェイスを確認します。ここでいくつか問題があります:

1.

問題: nginx: [emerg] bind() to [::]:80 が失敗しました (98: アドレスは既に使用されています)

nginx: [emerg] まだbind()できませんでした

解決方法: netstat -ntlp | grep 80で確認


次に、 service nginx stopと入力して再度確認すると、問題は解決しています。

問題: nginx: [emerg] /etc/nginx/nginx.conf:86 では "server" ディレクティブは許可されていません

解決

vim /etc/nginx/nginx.conf
サーバーを追加する{
....
}
httpに入れる
...
}
それは解決できる

まず: mkdir -p /var/www/html
次にディレクトリに移動し、 vim index.htmlを実行します。
htmlでコンテンツを自分で定義し、保存して終了し、構成ファイル内のデフォルトのindex.htmlパスを次のように変更します。


次にnginxを再起動します。service service nginx restart

ブラウザテスト

最後に、次のようにdockerコンテナのイメージを起動します。


最後に効果を確認します。ブラウザにアドレスとポート番号を入力するだけです。

これで、Docker コンテナに静的 Web サイトをデプロイする実装に関するこの記事は終了です。Docker に静的 Web サイトをデプロイする方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Docker を使用して静的 Web サイト アプリケーションを作成する (複数の方法)

<<:  jQueryはフォーム検証機能を実装します

>>:  HTML ウェブページハイパーリンクタグ

推薦する

フロントエンドJavaScript ES6の詳細について

目次1. はじめに1.1 Babel トランスコーダ1.2 ポリフィル2. let と const ...

Docker-compose チュートリアルのインストールとクイックスタート

目次1. Compose の紹介2. ComposeとDockerの互換性3. Dockerをインス...

AWS無料サーバーアプリケーションとネットワークプロキシ設定チュートリアルの詳細な説明

目次予防必要条件AWSアカウントを申請する仮想マシンの申請と有効化仮想マシンを申請するセキュリティグ...

MySQL で大量のデータ (数千万) を素早く削除するためのいくつかの実用的なソリューションの詳細な説明

著者は最近、仕事でパフォーマンスのボトルネックの問題に遭遇しました。MySQL テーブルには毎日約 ...

KTLツールはMySQLからMySQLへのデータの同期方法を実現します

ktl ツールを使用して、mysql から mysql にデータを同期します。 1. 新しいジョブス...

背景のグラデーションと自動フルスクリーンを実現するCSSコード

背景グラデーションと自動フルスクリーンに関する CSS の問題編集長は CSS の開発中に致命的な問...

js 加算、減算、乗算、除算の正確な計算方法のサンプルコード

序文コンピュータの数値は浮動小数点であるため、計算プロセス中に取得されるデータは通常正確ではなく、そ...

JavaベースのMySQLバックアップテーブル操作

コアはmysqldumpとランタイムです操作は実際にはそれほど難しくありません。バックアップ操作を実...

vue3とvue2の利点の比較

目次利点1: diffアルゴリズムの最適化利点2: ホイスト静的静的リフティング利点3: cache...

Quill エディタでカスタム HTML レコードを挿入する詳細な例

もう2020年です。飢えた人間は単純なテキストでは満足できなくなり、さまざまなスタイルの派手なテキス...

Linux で起動時にプログラムを自動的に実行させる最も簡単な方法

たくさん集めましたが、すべて失敗に終わりました。最終的に、この方法は優れており、使用に影響を与えない...

MySQLデータの同時更新を処理する方法

UPDATE はロックしますか?以下のような場合、SQL文はロックされますか? テーブル1を更新しま...

MySQL ルートパスワードをリセットする方法

目次1. ルートパスワードを忘れてしまい、データベースにアクセスできない: DBA にとって、スーパ...

nginx のインストールが完了した後に PHP を解析できない問題の解決方法

目次方法1方法2 nginxをインストールした後、PHPコードを解析できないことがわかりました。解決...

モバイルデバイス上の 1px 境界線を解決する最善の方法 (推奨)

モバイル デバイス向けに開発する場合、Retina 画面上で要素の境界線が太くなるという問題に遭遇す...