カタツムリ映画システムのDocker展開の詳細なプロセス分析

カタツムリ映画システムのDocker展開の詳細なプロセス分析

環境に関する声明

  • ホストOS: Cetnos7.9 最小インストール
  • docker バージョン: 20.10.6
  • システム要件: CPU 2コア以上、8Gメモリ

CPUコア数が2未満の場合、シアターにログインできません

  • mysql データベース: mysql5.6 コンテナ
  • redis データベース: redis4.0 コンテナ

Centos7.9をインストール

まずファイアウォールを停止し、SELinuxをオフにします

ファイアウォールの状態を確認する

ファイアウォール-cmd --state
# または systemctl status firewalld.service

ファイアウォールを停止する

systemctl 停止 ファイアウォールd.service

ファイアウォールの起動を無効にする

systemctl は、firewalld.service を無効にします。

selinux を永久に無効にする (オプション)

/etc/selinux/configファイルを入力します

vi /etc/selinux/config

SELINUX=enforcing を SELINUX=disabled に変更します。

SELinuxサービスを無効にする

強制0を設定する

SELinux ステータスを確認する

状態

依存パッケージをインストールする

# redhat-lsb をインストール
yum インストール -y redhat-lsb
# yum-config-manager をインストールします。そうでない場合は、次のメッセージが報告されます: yum-config-manager: コマンドが見つかりません yum -y install yum-utils
# Snail Ticketing はネットツールに依存します
yum インストール ネットツール -y

CentOS 7.9 に Docker をインストールする

# aliyun の docker インストール ソースを設定します yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

Docker依存関係をインストールする

yum インストール -y yum-utils デバイスマッパー永続データ lvm2

インストールソースのDockerバージョンを確認する

yum list docker-ce --showduplicates | sort -r

Dockerの最新バージョン(20.10.6)をインストールします

yum で docker-ce をインストールします。

Dockerのバージョンを確認する

docker バージョン

Dockerイメージのaliyunアクセラレータを構成する

# /etc/dockerディレクトリを作成する mkdir -p /etc/docker

#daemon.jsonを編集して作成する
tee /etc/docker/daemon.json <<-'EOF'
{
  "レジストリミラー": ["https://isdp30x2.mirror.aliyuncs.com"]
}
終了

Dockerデーモンを再起動します

# デーモンプロセスを再起動します sudo systemctl daemon-reload
# dockerサービスを再起動します。sudo systemctl restart docker 
# 起動時にDockerが自動的に起動するように設定する systemctl enable docker

DockerでRedisをデプロイする

ローカルマウントディレクトリを作成する

mkdir /data/redis/{conf,data} -p

Redisコンテナを作成する

# まず /data/redis/ ディレクトリに入ります cd /data/redis

# myredisという名前のコンテナを作成して実行します docker run -itd --name myredis \
-p 6379:6379 \
-v /データ/redis/データ:/データ\
--restart always redis --appendonly yes --requirepass "123456"

# パラメータの説明 -d -> コンテナをデーモンとして起動します -p 6379:6379 -> ホストポート 6379、コンテナポート 6379 にバインドします --name myredis -> コンテナ名を指定します --restart always -> 起動時に起動します --privileged=true -> コンテナ内の権限を増やします --requirepass -> ログインパスワードを設定します -v /data/redis/data:/data -> データディレクトリをマップします --appendonly yes -> データの永続性を有効にします

mysql5.6 の Docker デプロイメント

Dockerはmysqlを実行し、データを保存します

mysql5.6 イメージをプルします:

docker pull mysql:5.6

mysql ローカル データ ストレージ マッピング ディレクトリを作成します。

#MySQLのデフォルトのデータディレクトリは/var/lib/mysql/です
#フォルダーを構成するsudo mkdir -p /data/mysql/conf
## mysqlデータ用の永続データフォルダを作成する sudo mkdir -p /data/mysql/data
## mysql ログフォルダを作成する sudo mkdir -p /data/mysql/logs

## mkdir /data/mysql/{conf,data,logs} -p を一度作成します

MySQLコンテナの実行

docker run -dti -p 3306:3306 --name mysql56 -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Woniu123 --restart=always mysql:5.6

navicat使用してデータベースに接続し、データベースの文字エンコードをutf8mb4に復元し、デフォルトで並べ替えます。

ここに画像の説明を挿入

ホストにjdk8をインストールする

1.公式サイトからJDK8をダウンロードする

アドレス: http://www.oracle.com/technetwork/articles/javase/index-jsp-138363.html

ダウンロードする.gzパッケージを選択してください

2. 解凍して指定されたディレクトリに配置します(例としてjdk-7u60-linux-x64.gzを使用します)

ディレクトリを作成します:

sudo mkdir /usr/lib/jvm

指定されたディレクトリに解凍します:

 sudo tar -zxvf jdk-7u60-linux-x64.gz -C /usr/lib/jvm

3. 環境変数を変更します。

sudo vim ~/.bashrc

ファイルの末尾に次の内容を追加します。

#Oracle JDK環境を設定する

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60 ## ディレクトリは解凍したJDKディレクトリに変更する必要があることに注意してください export JRE_HOME=${JAVA_HOME}/jre  
エクスポート CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib エクスポート PATH=${JAVA_HOME}/bin:$PATH

環境変数をすぐに有効にする

 ソース ~/.bashrc

jdkが有効かどうかを確認する

# Javaのメインプログラムディレクトリを表示します。
# Javaのバージョンを確認する java -version

サーバープログラムのqianyaoディレクトリをホストマシンの/optディレクトリにアップロードします。

シネマサーバーを起動する

cd /opt/qianyao
# サーバーを起動します。/qianyao.sh start all
# 10 個のサービス プログラムがすべて起動するまで約 2 分ほど待ちます。 

ここに画像の説明を挿入

テストプロセス

  • 舞台裏
  • ニューシネマ
  • 新しい上映室
  • 映画を追加
  • 映画を検索
  • 映画のチケットを購入する
  • 支払い

上記は、snail cinemaシステムのdockerデプロイメントの詳細なプロセス分析の詳細な内容です。snailのdockerデプロイメントの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Centos7 システムで Docker ローカル イメージ ウェアハウスを構築する方法
  • Dockerコンテナの基本システムイメージのパッケージ化の詳細な説明
  • 実行中のDockerコンテナにファイルシステムをマウントする方法の詳細な説明

<<:  ウェブサイトのコンテンツの100~1%はナビゲーションである

>>:  html ページ!--[IE の場合]...![endif]--使用方法の詳細な紹介

推薦する

Vue3 手動カプセル化ポップアップ ボックス コンポーネント メッセージ メソッド

この記事では、ポップアップボックスコンポーネントメッセージのVue3手動カプセル化の具体的なコードを...

MySQLのファジークエリのような遅い速度を解決する方法

質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...

MySql8.0.19 インストールピットレコードを共有する

前回の記事ではMySql8.0.19のインストール手順を紹介しました。必要な方はクリックしてご覧くだ...

MySQLのスリープ関数の特殊現象例の詳しい説明

序文MySQL のスリープ システム機能は、実用的な適用シナリオが少なく、通常は実験的なテストに使用...

MYSQLストアドプロシージャ、つまり一般的な論理知識のポイントの要約

MySQL ストアド プロシージャ1. ストアドプロシージャ構文(フォーマット)を作成する 区切り文...

スーパーバイザーを使用して nginx + tomcat コンテナを管理する例

必要: docker を使用して nginx + tomcat デュアル プロセスを起動します。実際...

MySQLマスタースレーブ遅延現象と原理の詳細な分析

1. 現象早朝、オンライン テーブルにインデックスが追加されました。テーブル内のデータ量が大きすぎた...

CentOS7 で docker を使用して Apollo 構成センターをデプロイする実装

Apollo オープンソース アドレス: https://github.com/ctripcorp/...

MySQLの重複排除操作を極限まで最適化する方法

目次1. インデックスと変数の賢い使用1. インデックスなしの比較テスト2. created_tim...

SQLクエリの実行順序をゼロから学ぶ

SQL クエリ ステートメントの実行順序は次のとおりです。 (7)選択 (8) DISTINCT &...

Vue組み込みコンポーネントのキープアライブの使用例

目次1. キープアライブの使用使用例: 1. すべてのページをキャッシュする: 2. 条件に基づいて...

JavaScript ECharts の使用方法の説明

以前、プロジェクトを行う際に ECharts を使用しました。今日はそれをメモとして整理し、より多く...

Echarts は 1 つのグラフ内で異なる X 軸を切り替える機能を実装します (サンプル コード)

レンダリング下の画像のような効果を実現したい場合は、読み続けてアニメーション画像に直接進んでください...

JSを段階的に学ぶ方法についての簡単な説明

目次概要1. jsの位置づけを明確に理解する2. 明確な学習パス3. 自己規律と粘り強さ4. 練習し...

親ページの更新を制御するために HTML で iframe を実装するためのアイデアとコード

1. 応用シナリオ親ページ a.jspサブページ b.jsp (ページ a に埋め込まれた ifra...