• Docker部署Springcloud应用


    部署eureka注册中心

    部署eureka 注册中心。因为springboot自带Tomcat,所以直接打jar包,直接java -jar ....jar

    准备一个centos6带有jdk的容器

    docker pull centos:6
    docker run -it --name centos_micro -p 58889:8889 centos:6

    下载jdk

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    jdk拷贝到容器内

    FengZhen$ docker cp /Users/FengZhen/Downloads/jdk-8u171-linux-x64.tar.gz 42d5bc926de3:/jdk-8u171-linux-x64.tar.gz

    进入容器

    FengZhen$ docker exec -it 42d5bc926de3 /bin/bash
    [root@42d5bc926de3 /]# ls
    bin  home                        lib64       mnt   root     srv  usr
    dev  jdk-8u171-linux-x64.tar.gz  lost+found  opt   sbin     sys  var
    etc  lib                         media       proc  selinux  tmp

    安装jdk

    tar -zxvf jdk-8u171-linux-x64.tar.gz

    配置环境变量

    [root@42d5bc926de3 /]# vi ~/.bash_profile
    export JAVA_HOME=/java/jdk1.8.0_171
    export PATH=$PATH:$JAVA_HOME/bin
    
    [root@42d5bc926de3 /]# source ~/.bash_profile
    [root@42d5bc926de3 /]# java -version
    java version "1.8.0_171"
    Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
    Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

    Jdk安装成功

    将项目jar包拷贝进容器内

    FengZhen$ docker cp eureka-server-0.0.1-SNAPSHOT.jar 42d5bc926de3:/jar/
    [root@42d5bc926de3 jar]# ls
    eureka-server-0.0.1-SNAPSHOT.jar

    直接使用java -jar执行该jar包

    [root@42d5bc926de3 jar]# java -jar eureka-server-0.0.1-SNAPSHOT.jar

    执行成功后,在宿主主机请求该端口 

    成功

    使用Nginx负载均衡

    将以上操作的容器提交产生新的镜像 centos6_jdk:0.1

    FengZhen$ docker commit -m 'add jdk1.8' -a "Dokcer FZ" 42d5bc926de3 centos6_jdk:0.1
    sha256:1aa27342ec8e323110926ee108b72f6127f6615cb3140156e8b847a1f2504e00

    启动一个新的容器

    FengZhen$ docker run -itd --name centos_micro1 -p 58888:8889 centos6_jdk:0.1
    ba235b30c2a8f3701dc1022d8c7215e2c5554c3e881dc873ada12f1c19374883

    进入容器

    FengZhen$ docker exec -it ba235b30c2a8 /bin/bash
    [root@ba235b30c2a8 /]#

    启动项目

    [root@ba235b30c2a8 jar]# java -jar eureka-server-0.0.1-SNAPSHOT.jar

    启动nginx

    FengZhen$ docker run -itd --name nginx_micro -p 50080:80 -v /Users/FengZhen/Desktop/积累/docker/docker_nginx:/usr/share/nginx/html nginx:latest
    f9bef01af25416dc3866f4d49e7ed10b8feced753f439c4dfed7c8f8a43d6eed
    FengZhen$ echo "hello docker nginx!" > index.html

    进入容器

    FengZhen$ docker exec -it f9bef01af254/bin/bash

    Nginx默认index.html更换内容如下

    root@fe21c9e2f1af:/# cd /usr/share/nginx/html/
    root@fe21c9e2f1af:/usr/share/nginx/html# ls
    50x.html  index.html
    root@fe21c9e2f1af:/usr/share/nginx/html# cp index.html index_bak.html
    root@fe21c9e2f1af:/usr/share/nginx/html# echo "hello docker nginx!" > index.html

    此时刷新页面可以看到页面内容已成功更换。

    # /usr/sbin/nginx       启动nginx服务

    # apt-get update        升级vim

    # apt-get install vim        安装vim

    配置/etc/nginx/nginx.conf

    html{}中添加

    upstream micro{
    server 192.168.1.102:58889;
    server 192.168.1.012:58888;
    }

    配置 /etc/nginx/conf.d/default.conf

    root@2b4934752b9f:/# vim /etc/nginx/conf.d/default.conf
    location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            proxy_pass http://micro;
    }

    退出容器并重启

    docker restart 275cf1511f80

    此时请求

    成功

  • 相关阅读:
    时间的计算
    中英文词频统计
    组合数据类型,英文词频统计
    作业二
    学号提取
    用for循环产生的网址
    温度转换
    身份证号码提取
    数字游戏
    更改mysql连接个数
  • 原文地址:https://www.cnblogs.com/EnzoDin/p/16532403.html
Copyright © 2020-2023  润新知