1. 冒頭の2つの単語みなさんこんにちは。私の名前はLin Zonglinです。私はテストエンジニアであり、フルスタックテストトレーニングキャンプの学生です。 トレーニングキャンプで 2. プロジェクトの紹介このプロジェクトは、フロントエンドとバックエンドの分離技術を使用して実装されています。フロントエンドは 2.1 dockerとdocker-composeをインストールする以下の操作はすべて 1. 古いバージョンをクリーンアップまたはアンインストールします。 sudo yum dockerを削除します\ dockerクライアント\ docker-client-最新 \ docker-common \ docker-最新 \ docker-最新-logrotate \ docker-logrotate \ dockerエンジン 2. yumライブラリを更新する sudo yum インストール -y yum-utils sudo yum-config-manager \ --リポジトリを追加\ https://download.docker.com/linux/centos/docker-ce.repo 3. 最新バージョンをインストールする sudo yum インストール docker-ce docker-ce-cli containerd.io 4. Dockerサービスを開始する sudo systemctl dockerを起動します 5. docker composeインストールパッケージをダウンロードする curl を使用してインストールする利点は、依存関係が不足することを心配する必要がないことです。 sudo curl -L "https://github.com/docker/compose/releases/download/1.28.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose 6. docker composeの権限を変更する sudo chmod +x /usr/local/bin/docker-compose 2.2 DockerfileカスタムPythonコンテナまず、デプロイするDjangoプロジェクトコードを特定のディレクトリ(ここでは Djangoプロジェクトの依存パッケージファイル Dockerfileファイルを作成する: Dockerfile の内容: (注: ステートメントの後にコメントを入れないでください。一部のステートメントの実行時に問題が発生する可能性があります): # ベースイメージ FROM python:3.6.8 # python -u を置き換えて、出力をファイルにリダイレクトします。 環境変数 PYTHONUNBUFFERED 1 # ディレクトリを作成し、作業ディレクトリを切り替えます。RUN mkdir /code && mkdir /code/db WORKDIR /コード # ファイルを追加 ADD ./requirements.txt /code/ # コマンド RUN pip install -r requirements.txt を実行します。 # ファイルを追加 ADD ./code/ 2.3 Docker Compose コンテナの作成同じディレクトリを配置し、docker-compose.yml ファイルを作成します: # docker-compose バージョン: "3.9" # サービス情報サービス: # mysql コンテナ、カスタム名 db: イメージ:mysql:5.7 さらす: - 「3306」 ボリューム: - ./db:/var/lib/mysql #データベーステーブルのデータセットを設定するコマンド: [ '--character-set-server=utf8', '--collation-server=utf8_unicode_ci' ] 環境: -MYSQL_DATABASE=xxxx で始まる -MYSQL_ROOT_PASSWORD=yyyy 再起動: 常に # Django は Web を提供します: # このパスの Dockerfile に基づいて Python コンテナを作成します。build: 。 コマンド: bash -c "python ./test_plat_form/manage.py migrate && python ./test_plat_form/manage.py runserver 0.0.0.0:8000" ボリューム: - .:/コード ポート: - 「8000:8000」 さらす: - 「8000」 # 現在のサービスが依存するサービスは、まず依存サービスを起動し、次に現在のサービスを起動します。depends_on: -db # コンテナの IP は可変で、構成ファイル内の mysql の HOST 値を置き換えます。名前は、上記のリンクの mysql コンテナ サービスの名前と一致します。 -db ボリューム: - ./files/suites:/code/test_plat_form/suites - ./files/debugs:/code/test_plat_form/debugs - ./files/reoprts:/code/test_plat_form/レポート - ./files/run_log:/code/test_plat_form/run_log Djangoプロジェクトのsetting.pyファイル内のmysqlホストを、上記のWebノードのlinksの値に変更します。 データベース = { 'デフォルト': { 'エンジン': 'django.db.backends.mysql', '名前': 'xxxx', 'ユーザー': 'root', 'パスワード': 'yyyy', 'HOST': 'db', # ここで変更 'PORT': 3306 } } コマンドを実行 パス: 2.4 Vueプロジェクトの構築Vue は従来の方法で構築できます。 サーバー構成ノードnpm環境 グローバルpm2をインストールする プロジェクト内のAPIのホストをサーバーのIPまたはドメイン名に変更します vueプロジェクトをパッケージ化します: 定数 fs = require('fs'); 定数パス = require('path'); 定数 express = require('express'); express() は、定数です。 app.use(express.static(path.resolve(__dirname, './dist'))) // ディレクトリ内の単一ページ ファイル (index.js) を読み取り、ポート 8080 をリッスンします。 app.get('*', 関数(req, res) { 定数 html = fs.readFileSync(path.resolve(__dirname, './dist/index.html'), 'utf-8') res.send(html) }) アプリをリッスンします(8080); パッケージ化されたdistディレクトリ、app.js、package.jsonをプロジェクトディレクトリにコピーします。 プロジェクトディレクトリに入り、依存関係をインストールします: サービスを開始する: コンテナログを実行します。 ブラウザを使用して 結論現時点ではこのプロジェクトの構成は比較的シンプルで、オーケストレーションに使用されるコンテナは 2 つだけです。しかし、これを例にとると、より多くのコンテナを構築する際には、まずプロジェクトの構成に合わせて異なるコンテナをカスタマイズし、その後コンテナ間の組織関係や依存関係を計画することで、スムーズに構築できると考えています。 Django+Vue+Docker を実際に使用してインターフェース テスト プラットフォームを構築する方法については、これで終わりです。Django+Vue+Docker インターフェース テストに関する関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: フレームセットを使用してワイドスクリーンを中央に配置するためのヒントを共有する
目次序文準備する実装のアイデアコードについて要約する序文WeChat 認証ログインは、WeChat ...
システムをインタラクティブに監視したい場合は、htop コマンドが最適な選択肢の 1 つです。 ht...
ソート問題最近、Geek Time の「45 Lectures on MySQL Practice」...
ページに複数の画像を導入すると、画像のサイズがばらつくことがあります。しかし、それらを一貫したサイズ...
目次導入導入集計関数 + over()ソート関数 + over() ntile() 関数 + ove...
MySQL パスワードを忘れた場合の解決策: [root@localhost ~]# mysql -...
目次構造を選択ループ構造その間…しながらforループ…のために…で…の…のためにまとめループの終了壊...
フォーム要素はたくさんあります。簡単にまとめると、次のようになります。私のやり方では、主にテキスト ...
HTML では、<、>、& などは特別な意味を持ち (<、> はリン...
この記事では、例を使用して、MySQL ビューの原理と基本操作を説明します。ご参考までに、詳細は以下...
この記事では、参考までに、シンプルな広告ウィンドウを実装するためのjsの具体的なコードを紹介します。...
この記事では、ローカル yum ソースを使用して CentOS 上に LAMP 環境を構築する方法に...
目次1. はじめに2. 本文2.1 フィールドの連結2.2 フィールドでの算術計算の実行1. はじめ...
textarea 入力領域でテキストを折り返す場合は、<br/> と入力すると <...
1. rzをサーバーにアップロードして解凍する rz [root@mini2 アップロード]# ta...