要件(運用および保守関連)
ミラーを介してプロジェクトをサーバーに公開してから、ログをgranfaにリンクする必要があります。
必要なテクノロジーと手順
技術:
Dockerコマンド
auto-configプラグイン
uselinuxenvironmentコマンド
ステップ:
- 指定された構成ファイル(auto-configプラグインが構成されている)を介してバックエンドプロジェクトをパッケージ化します。コマンドは次のとおりです。
mvn clean install -Dmaven.test.skip = true -Dautoconfig.userProperties = / Users / xxx / xxx / application.propertiesの
後に、指定した構成ファイルのパスが続きます(ここでは、Baiduを単独で使用するようにこのプラグインを構成する方法、エラー発生した場所を確認してください)
- パッケージ化が完了したら、イメージをパッケージ化するようにDockerfileを構成する必要があります。通常は一般的なdockerfileです。
FROM java:8
COPY * .jar /app.jar
CMD ["–server.port = 8080"]
EXPOSE 8080
ENTRYPOINT ["java"、 "-jar"、 "app.jar"]
- scpコマンドを使用して、これらのファイルをサーバーに転送します。最初にSpringboardを経由する必要があるため、最初にSpringboardに転送し、次にサービスに転送します。権限がないことが示されている場合は、最初に/ tmpに転送できます。一時ファイルの保存場所。
scp / Users / xxx / Desktop / xxxサーバーアドレス:/ tmp
送信がフォルダーの場合は、-rを追加してループで読み取ります。
- サーバーに入り、Dockerfileとプロジェクトのjarパッケージをフォルダーに入れ、docker build to packageをミラーに直接実行し、それを実行して本番環境を完了します。-vコマンドを使用してログ出力をにマウントできます。サーバー、それ以外の場合は、常にコンテナ内にあります
- フロントエンドプロジェクトは、nginxミラーを介してフロントエンドプロジェクトを開始するためのものであり、開始するにはnginx構成が必要です。一般的な構成は次のとおりです。
server {
listen 80;
server_name localhost;
location ~ ^/xxx/* {
proxy_pass http://localhost:8080;
}
location / {
try_files $uri $uri/ /index.html;
root /usr/xxx/xxx;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
nginxリバースプロキシの構成は、ポート80の要求をポート8080に転送します。packagesコマンドは以前と同じです。nginxミラーを起動するときに、このdefault.confをコンテナーにマウントするだけで済みます。6。
前面で構成します。次の場合に問題が発生します。
403を直接報告する理由は、ユーザーnginxまたはユーザーnobodyがnginxのデフォルト構成ファイルnginx.confで使用されているため、起動する権限がないためです。
次に、サーバーのデフォルトのseLinuxモードがstrictモードであるため、プロジェクト502があり、confのseLinuxのデフォルト値を/ etc / seLinuxで変更する必要があり、再起動する必要があります。ただし、これを一時的にオフにすることもできます。コマンドは0を設定してオフにし、構成ファイルのローカルホストをサーバーのドメイン名に変更します。これにより、ゲートウェイ制限の問題が解決されます。
データボリュームをマウントする方法など、dockerコマンドの詳細を学ぶことができます。ここではそれらをリストしません。