1. DockerをインストールするPS: インストールの前提条件は、CentOS VMがインストールされていることです yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2. Dockerをインストールする yum -y で docker-ce をインストールします 3. Dockerサービスを開始する systemctl ドッカーを起動する 4. 画像アクセラレーションを設定する 4.1. docker サービス構成を変更します: 4.2. パラメータの後に次の行を追加します: ExecStart=/usr/bin/dockerd --registry-mirror=https://xfaawkne.mirror.aliyuncs.com -H fd:// --containerd=/run/containerd/containerd.sock 4.4. Dockerを再起動する systemctlデーモンリロード systemctl dockerを再起動します 2. カスタムネットワークアドレスを作成する// cbnet ネットワークを作成 docker network create --subnet=172.18.0.0/16 cbnet //docker ネットワークを削除するコマンド docker network rm ネットワーク IP 名 //docker ネットワークの定義を表示する docker network ls 3. Dockerがコンテナを作成する1. mysql、redis、nginxコンテナを作成する マイグレーション: docker run -d --name mysql --network cbnet --ip 172.18.0.100 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql レディス: docker run -itd --name redis -p 6379:6379 --network cbnet --ip 172.18.0.102 redis nginx: いいえ docker run --name nginx -p 80:80 --network cbnet --ip 172.18.0.105 nginx //そうでない場合は自動的にダウンロードされます 4. カスタムイメージすべてのローカル 1. プロジェクトの pom.xml ファイルの plugins の下に docker-maven プラグインを追加します。 <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <バージョン>1.0.0</バージョン> <構成> <dockerホスト>http://192.168.161.129:2375</dockerホスト> <imageName>creatorblue/spring-security</imageName> <画像タグ> <imageTag>最新</imageTag> </画像タグ> <forceTags>偽</forceTags> <dockerディレクトリ>${project.basedir}/src/main/resources</dockerディレクトリ> <リソース> <リソース> <ターゲットパス>/</ターゲットパス> <ディレクトリ>${project.build.directory}</ディレクトリ> <include>${project.build.finalName}.jar</include> </リソース> </リソース> </構成> </プラグイン> 2. リソースディレクトリに新しいDockerfileファイルを作成し、次の内容を入力します。 frolvlad/alpine-oraclejdk8:slim より ユーザー ルート ボリューム /tmp springboot-security-0.0.1-SNAPSHOT.jar app.jar を追加します。 sh -c 'touch /app.jar' を実行します。 ENV JAVA_OPTS="-server -Xms256M -Xmx512M -XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=128M -Dfile.encoding=UTF-8 -Duser.timezone=GMT+08" ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ] 3. プロジェクトをパッケージ化し、プロジェクトを右クリックして、「実行」で「Maven ビルド」を選択します。次のコードを入力して「実行」をクリックします。 docker:build -P prod または cleanpack docker:build -P prod コンソールに次の図が表示され、成功となります。 4. 仮想マシンのdocker.service設定を変更し、ポート2375を開きます。 1. まずdocker.serviceファイルに入ります vim /usr/lib/systemd/system/docker.service 2. 次に、ポート2375を開きます -H tcp://0.0.0.0:2375 3. 最後にDockerを再起動します systemctlデーモンリロード systemctl dockerを再起動します 5. 仮想マシンでカスタムイメージが成功したかどうかを確認します: 6. カスタムコンテナIPアドレスを構成する docker run -d --name spring-security -p 8088:8080 -v /mnt/uploads : /mnt/uploads --network cbnet --ip 172.18.0.110 docker run -d --name spring-security2 -p 8089:8080 -v /mnt/uploads : /mnt/uploads --network cbnet --ip 172.18.0.111 最後に、MySQL、Redis、Nginx、Spring-securityコンテナを起動します。 5. nginxリバースプロキシを設定する負荷分散を実現する (1 つの IP がログインした後、2 番目の IP は互いに混雑することなく直接ログインできる) 1. nginxディレクトリを表示する 1. コンテナファイルをコピーします: docker cp nginx:/etc/nginx/conf.d/default.conf default.conf 2. ファイルを編集する: vi default.conf 2. default.confファイルにコードを追加する default.conf ファイルを次のように変更します。 //同じイメージの上流に 2 つのコンテナがある my{ サーバー 172.18.0.110:8080; サーバー 172.18.0.111:8080; } 場所 / 春 proxy_pass http://my; } 6. プロジェクトをGitリポジトリにアップロードする1.まず倉庫を作る 2. 作成が完了したら、倉庫の住所をコピーします。 3. アップロードするプロジェクトを選択し、プロジェクトを右クリックして、チームの下でプロジェクトの共有を選択します。 最後に、「完了」をクリックして完了です。図に示すように: 4. ローカル ウェアハウスに送信します。プロジェクトを右クリックし、[チーム] の下の [コミット] を選択します。 5. リモートウェアハウスに送信し、次の図に示すようにプロジェクトを右クリックします。 この記事の最初の手順からコピーした場合は、コピーする必要はありません。Eclipse はすでに同期しています。最初にコピーしなかった場合は、git リポジトリ アドレスをコピーするだけです。 この時点でgit URLを更新すると、以下のように成功します。 プルまたはアップロードできない問題が発生した場合は、詳細については 7. Jenkinsを使用してプロジェクトを公開およびテストする公式サイト 2. 以下の手順に従って仮想マシンにインストールします。 3. インストールが成功したら、Jenkinsを起動します。 アクセスアドレス 仮想マシンの IP アドレス + Jenkins のデフォルトポート 8080 推奨プラグインをインストールすることを選択するだけです。 ネットワークの問題により、一部のプラグインのインストールに失敗しました。Git は正常にインストールされました。[続行] をクリックして次の手順に進むことができます。 4. 仮想マシンにGitをインストールする yum インストール -y git 5. プロジェクトをビルドするために、Jenkins で新しいアイテムを作成します。手順は次のとおりです。 正常にビルドされたプロジェクトをクリックして構成し、[OK] をクリックします。 6. Jenkinsの管理をクリック グローバルツールを設定して 7. 仮想マシンにjdkをダウンロードし、jdkを構成する 注文: yum インストール -y javacc-maven-plugin.noarch //javacを検索 検索 / -name javac 8. Mavenを設定する 8.2. ホームディレクトリに戻り、 ファイルを解凍する 8.4. ファイルを解凍したら、Mavenに入り、cd confと入力し、settings.xmlファイルを変更し、Alibaba Cloudサーバーをロードして速度を上げます。 1. 編集コマンドを入力します: vi settings.xm 2. ミラーに Alibaba Cloud Server <mirror> を追加する <!-- これにより、他のすべてが /public に送信されます --> <id>アリユン</id> <ミラーOf>*</ミラーOf> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </ミラー> <ミラー> <!--これは、パブリックスナップショットリポジトリを 以下のプロフィールを別の Nexus グループに転送します --> <id>aliyun パブリックスナップショット</id> <ミラーOf>*</ミラーOf> <url>http://maven.aliyun.com/nexus/content/repositories/snapshots/</url> </ミラー> 8.5. 設定 9. 最上位のMavenゴールを呼び出してビルドプロジェクト設定に入る Mavenプロジェクトをビルドし、コマンド 10. 仮想マシン上のspring-securityパスを見つける 11. ビルドプロジェクトを完了する 以下のインターフェースと起動は成功です! Jenkins の実行時に発生する一般的なエラー: 2. Jenkinsに十分なアクセス権がない 権限を解決するコマンドは vim /etc/sysconfig/jenkins です。 3. 実行シェルが間違ったプロジェクト名を書き込む 13. テストURLアクセスアドレス 最後に、プロジェクトをアップグレードする必要がある場合は、まずコードの記述を完了し、それをコミットして Git リポジトリにプッシュし、Jenkins で再構築して、新しいインターフェースに再度アクセスします。次の例の手順を参照してください。 補足: 複数のコンテナを同時に起動するスクリプトを書くことができます !/bin/bash docker run -d --name spring-security -p 8087:8080 -v /mnt/uploads:/mnt/uploads --network cbnet --ip 172.18.0.10 cetorblue/spring-security docker を実行します -d --name spring-security -p 8088:8080 -v /mnt/uploads : /mnt/uploads --network chnet --ip 172.18.0.10 Creatorblue/spring-security docker run_ -d --name spring-security -p 8089:8080 -v /mnt/uploads : /mnt /uploads --network chnet --ip17.18.0.10 cretorblue/spring-security 最後に、 Git を使用した Docker による Jenkins リリースおよびテスト プロジェクトの実装の詳細なプロセスに関するこの記事はこれで終わりです。Docker Jenkins リリース テスト プロジェクトの関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: ウェブサイトのパフォーマンスを向上させるためのコンテンツ関連の10の原則
目次序文1.nullでない2. ユニーク3. デフォルト4.主キー自動増分主キー5. 外部キー6.チ...
序文日常の開発では、テキストの水平スクロール効果(一般にカルーセルと呼ばれる)によく遭遇します。これ...
テーブル内の min-width と max-width プロパティの設定 <テーブル>...
目次1. ダウンロード2. 展開1.Nginxのデプロイメント2. ModSecurityの展開3....
目次コンポーネント - タイムラインカスタムノードスタイルカスタムタイムスタンプコンポーネント - ...
1. はじめにMySQL が起動すると、BufferPool が初期化されます。クエリ操作を実行する...
エラー 1290 (HY000) : MySQL サーバーは –secure-file-priv オ...
1. ディスプレイボックス;要素にこのプロパティを設定すると、display:inline-bloc...
1. MySQLをインストールする # docker で mysql をダウンロード docker ...
最近、Zabbix データベースを MySQL 5.6 から 5.7 にアップグレードしたときに、マ...
#docker 検索#docker プルポーター1. イメージを取得した後、中国語パッケージをダウン...
この記事では、例を使用して MySQL ストアド プロシージャのエラー処理について説明します。ご参考...
MSIインストールパッケージを使用してインストールするご使用のオペレーティング システムに応じて、対...
MySQL には、10 進数などの標準データ型だけでなく、float や double などの非標...
ファイル サーバーは、企業内で最も一般的に使用されるサーバーの一つであり、主にファイル共有を提供する...