ドッカーのネットワーク設定

目的:

    ドッカーネットワーク設定

           ドッカーの展開SpringCloud プロジェクト


 

ドッカーネットワーク設定

  ドッカーのネットワークモデルを導入します

ドッカーコンテナを作成しないとき、4つのネットワークモードがあります:ブリッジ/ホスト/コンテナ/なしブリッジをデフォルトにする必要はありません--netをコンテナの作成時に他の三つのモードを指定するためには、使用する必要が--netを指定します

  • ブリッジモードデフォルトモード

実行ドッキングウィンドウの使用-ネット=橋、このパターンは、それぞれに別々の容器に割り当てられているネットワークの名前空間を、

     ホスト上のすべての同一の容器は、それらが互いに通信することができ、同じネットワークになります

      1 ブリッジは、デフォルトモードで、パラメータなし--net 使用して、指定する--net パラメータを無効けど

      2 ブリッジモードはコンテナを指定することはできませんIP(しかし、絶対的ではありません

  • ホストモード

  ドッキングウィンドウの実行を使用-ネット=ホストは、コンテナは仮想ではありませんIP / ポートが、ホストの使用IP とポート

ドッキングウィンドウの実行-itd --net =ホスト961769676411

1 ホストモードはホストと一致しているルールを、ルーティングポートマッピングおよびカスタムを使用することはできません、-p -icc パラメータが無効です

   3.containerのモードわずかに

   4.noneのモードわずかに

   5. クロスホスト通信省略

     4上記のいずれもホスト間で、そのコンテナは、単一のホスト上で実行されていないが、実際の運用環境は、単一で実行することはできません。

     我々は確かに通信ホスト間に複数の、どのくらいのコンテナを使用します

     1. 使用するネットワークのルーティングメカニズムを開きます

     2. 使用開きのvSwitch OVS )オープンネットワーク

     3. 使用して、フランネルネットワークを開きます

     4. 使用クアッガ自動的にルートを学習します  

      1 :詳細は、以下を参照してください

 https://www.cnblogs.com/yy-cxd/p/6553624.html

 

外部アクセスドッキングウィンドウのコンテナ

  • ブリッジモード

RUNは、ドッカー-p -itd 71017101 ミラーID 
     ## - Pパラメータが複数回現れることができ、ポート番号複数の結合
     ドッカーRUNを -p -itd 80808080 -p 80888088 ミラーID 

例:
ドッカーRUN迅速化IT - -p mytomcat02 -name 80818080 882487b8be1d 
HTTP:// 192.168.239.130:8081/

 

  • ホストモード

ドッキングウィンドウの実行-itd --net =ホスト画像ID

例:

ドッキングウィンドウの実行-itd --net =ホスト882487b8be1d

http://192.168.239.130:8080/

   1 :追加する必要はありません-p それはのホストで使用されているため、パラメータをIP とポートを追加、-p パラメータを、それが次の警告が表示されます。

          警告:ホストネットワークモードを使用するときに公開されたポートが破棄されます

      2 ホストの IP ルーティング転送が開いている必要があり、そうでない場合は、コンテナがネットワーク化によって作成することができません! 

          エコー1>は、/ proc / sys / net / IPv4の/ ip_forward

 3. 関連コマンド

     #停止し、すべてのコンテナを削除します

 ドッキングウィンドウの停止$(ドッカPS -aq)&&ドッキングウィンドウのrm $(ドッカPS -aq)

   4. ブリッジビューツールブリッジ-utilsの

   bridge-のaptインストールのutils 

     brctlショー

 

コンテナのTomcatでのプルは、ウェブ環境を実行している中で、私たちは、ドッキングウィンドウを持たせ、それが開始するようにポートを設定します

プルTomcatのドッカー:8 
ドッカーRUN -DI --name mytomcat01 -p 8081:8080 6408fdc94 -起動し、ポートを設定します

 

 私たちは、ブラウザにアクセスする場合は、IPホストアクセスを通過します。

  別のポートを設定するには、複数のTomcatを起動することができ、私は2つのポートを構成するためにここにいます

192.168.239.130:8081
192.168.239.130:8082

 成功は、その後、我々はドッカー訪問にネットワーク構成のTomcat、どのようSpringCloudで見てみましょうを終えました。

 


ドッカー展開SpringCloudプロジェクト

 プロジェクトがアクセスできるようにするには

http:// eureka2001.ht.com:2001/

 

アイデアspringcloud 戦いへのプロジェクトのjar パッケージ

 変更されたマスタモジュールのポンポン

<バージョン> 0.01 -snapshot </バージョン> 
<! - 1。注変更ポンポン代わりにJARの- > 
<! - <包装> JAR </梱包> - > <包装> POM </梱包>

  <! - 2.モジュールの主にプラグインを設定しないでください - >

     <ビルド> </ビルド>

在各个子module模块的pom.xml文件中添加插件依赖

<build>
        <plugins>
            <!--添加maven插件-->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <!--添加自己的启动类路径!根据不同类随机变换-->
                    <mainClass>com.javaxl.microservicestudentproviderhystrix.MicroserviceStudentProviderHystrixApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <!--可以把依赖的包都打包到生成的Jar包中-->
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
     </build>

点击ideaview ——》Tool windows ——》maven projects  先双击clean(去掉之前打的包target文件夹)——》再创建install

 

 按照上面的步骤,挨个打包

在本地仓库里就是这样,我们测试就是用这个jar

将项目各子模块target目录下的jar包,复制到指定目录,再打开cmd通过java命令直接运行

java -jar microservice-eureka-server.jar --spring.profiles.active=eureka2001

docker部署springcloud

  首先创建一个apps文件夹用来存放jar包

mkdir apps

 

 

用命令把打包好的项目jar包上传到apps文件中

 

 

 使用jre:8镜像启动容器,并挂载指定目录为数据卷

 

 docker run -d \
       -it \
       --net=host \
       --name eureka-server-peer1 \
       --mount type=bind,source=/javaxh_docker/apps,target=/javaxh_docker/apps \
       117457ead2af

 

  

宿主机修改hosts文件

 

vim /etc/hosts

 

# 在里面添加要映射的域名即可

     127.0.0.1  eureka2001.ht.com

     127.0.0.1  eureka2002.ht.com

 

 

 

进入容器,java命令启动微服务

 docker exec -it eureka-server-peer1 /bin/sh

  java -jar microservice-eureka-server.jar --spring.profiles.active=eureka2001

     1:同理可以启动eureka-server-peer2

     2docker start $(docker ps -aq)

 

 

测试:

http://192.168.239.130:2001/

http://192.168.239.130:2002/

 

 

 

注意:

如果 浏览器访问不到那就是防火墙没有关

先查看你防火墙关没关

systemctl status firewalld

 

 很明显我的没有关闭的

那么输入以下命令,关闭防火墙

  systemctl stop firewalld.service
  systemctl disable firewalld.service

 

 

谢谢观看!!!

 

おすすめ

転載: www.cnblogs.com/huangting/p/11984881.html