Java Webアプリケーションをdockerで導入する方法
文書ディレクトリ 1.ミラーのスクリプトファイル を作成する.ミラーの作成 3.ミラー を実行する
前に書く
本文を読む前に、dockerについて理解してほしい.
dockerを使用してjava webアプリケーションを配備し、まずミラーのスクリプトファイルを作成し、次にミラーを作成し、最後にミラーを実行します.
1.ミラーのスクリプトファイルを作成する
Java webアプリケーションを配備するには、Java 8の実行環境が必要なので、Java 8をベースとしたミラーリングが必要です.
Dockerfileの作成:
Dockerfileはdockerミラーを自動的に構築するプロファイルで、Dockerfileを使用してカスタムミラーをすばやく作成できます.
このディレクトリの下にDockerfileというファイルを作成し、パッケージされたWebアプリケーションをそのディレクトリの下に移動します(例のWebプログラムはGyWeather-1.0.0.jar).
2.ミラーの作成
現在のディレクトリのDockerfileスクリプトを使用して、gy/gyweatherという倉庫名のミラーを作成します.
3.ミラーの実行
コンテナを起動するにはdocker runコマンドを使用します
コンテナの起動:
ログの表示:
起動時に表示:
注:私はdockerについてあまり知らないので、その間に多くの問題に遭遇して、やりにくいですよ.私のwebアプリケーションはspring bootで、disconfを使っているので、思ったより配置が難しく、結局、私は配置に成功できませんでした.ログを表示すると、jdkにjarパッケージが付属しているクラスが見つからないため(dockerでWebアプリケーションを実行しない場合、正常に実行でき、問題は発生しません)、環境変数も使用しようとしましたが、この問題は解決できませんでした.いずれにしても、やはり多くの知识を学んで、后で私がこれらの问题を解决する能力があることを望みます.
前に書く
本文を読む前に、dockerについて理解してほしい.
dockerを使用してjava webアプリケーションを配備し、まずミラーのスクリプトファイルを作成し、次にミラーを作成し、最後にミラーを実行します.
1.ミラーのスクリプトファイルを作成する
Java webアプリケーションを配備するには、Java 8の実行環境が必要なので、Java 8をベースとしたミラーリングが必要です.
Dockerfileの作成:
Dockerfileはdockerミラーを自動的に構築するプロファイルで、Dockerfileを使用してカスタムミラーをすばやく作成できます.
このディレクトリの下にDockerfileというファイルを作成し、パッケージされたWebアプリケーションをそのディレクトリの下に移動します(例のWebプログラムはGyWeather-1.0.0.jar).
# java:8
FROM java:8
#
MAINTAINER duofei <[email protected]>
VOLUME /temp
#
ADD GyWeather-1.0.0.jar app.jar
# app.jar
RUN bash -c 'touch /app.jar'
# 8089
EXPOSE 8089
#
ENTRYPOINT ["java","-jar","/app.jar"]
2.ミラーの作成
現在のディレクトリのDockerfileスクリプトを使用して、gy/gyweatherという倉庫名のミラーを作成します.
$ sudo docker build -t gy/gyweather:v1 .
3.ミラーの実行
コンテナを起動するにはdocker runコマンドを使用します
$ sudo docker run --name gyweather -d -p 80:8089 gy/gyweather:v1
コンテナの起動:
$ sudo docker start gyweather
ログの表示:
$ sudo docker logs -f gyweather
起動時に表示:
$ sudo docker attach gyweather
注:私はdockerについてあまり知らないので、その間に多くの問題に遭遇して、やりにくいですよ.私のwebアプリケーションはspring bootで、disconfを使っているので、思ったより配置が難しく、結局、私は配置に成功できませんでした.ログを表示すると、jdkにjarパッケージが付属しているクラスが見つからないため(dockerでWebアプリケーションを実行しない場合、正常に実行でき、問題は発生しません)、環境変数も使用しようとしましたが、この問題は解決できませんでした.いずれにしても、やはり多くの知识を学んで、后で私がこれらの问题を解决する能力があることを望みます.