0
点赞
收藏
分享

微信扫一扫

apollo-springboot 整合使用

十里一走马 2022-02-28 阅读 48

依赖:

  <!-- Add apollo configuration -->
        <dependency>
            <groupId>com.ctrip.framework.apollo</groupId>
            <artifactId>apollo-client</artifactId>
            <version>${apollo.version}</version>
         </dependency>            


<apollo.version>1.4.0</apollo.version>

主类:

@Cacheable
@EnableSwagger2
@EnableRetry
@SpringBootApplication
@EnableApolloConfig
public class Application {

 application.properties (也可以不配置)

#The App Id  
app.id = MILESTONE-SUBSCRIPTION-SERVICE  //应用名称
# Apollo Meta Server , it will be diable when docker deployed 
apollo.meta =  http://192.168.3.153:8080  //apollo conifg server
#The configuration cache directory
apollo.cacheDir = ./config    //配置缓存路径
apollo.bootstrap.enabled = true
# application namespace
apollo.bootstrap.namespaces = application

启动:

java -Denv=$AP_ENV -jar /opt/milestone-subscription-service-0.0.1-SNAPSHOT.jar--apollo.meta=$CONFIG_SERVERS
 java -Denv=dev -jar   milestone-subscription-service-0.0.1-SNAPSHOT.jar   --apollo.meta=192.168.18.129:8080

$AP_ENV= 可以是: dev ,  pd , test, qa

$CONFIG_SERVERS: apollo 配置服务的config  服务的IP:port  

配合docker 使用 

Dockerfile:

FROM frolvlad/alpine-oraclejre8:slim
VOLUME /tmp
ADD milestone-subscription-service-0.0.1-SNAPSHOT.jar /opt/milestone-subscription-service-0.0.1-SNAPSHOT.jar
COPY agent/ /usr/local/skyagent/
WORKDIR  /opt
COPY docker-entrypoint.sh .
ENV AP_ENV=$AP_ENV

EXPOSE 7015
ENTRYPOINT ["sh", "docker-entrypoint.sh"]

docker-entrypoint.sh:
#!/bin/sh

if [ x"$AP_ENV" = x ]
then
   echo "AP_ENV IS NULL , USE DEFAULT DEV AS DEFAULT !"
   echo "dev=$AP_ENV"
else
   echo "AP_ENV IS $AP_ENV !"
fi
if [ x"$AGENT_SERVICE_NAME" = x ]

then
  echo "No MS Trace Agent $AGENT_COLLECTOR_ADDRESS Setting, @@ NOT USE MS TRACE  !"
  java -Denv=$AP_ENV -jar /opt/milestone-subscription-service-0.0.1-SNAPSHOT.jar--apollo.meta=$CONFIG_SERVERS
else
  echo " USE MS TRACE Agent to start the service !"
  java -Denv=$AP_ENV -javaagent:/usr/local/skyagent/skywalking-agent.jar=agent.service_name=$AGENT_SERVICE_NAME,collector.backend_service=$AGENT_COLLECTOR_ADDRESS $JAVA_OPTS -jar /opt/milestone-subscription-service-0.0.1-SNAPSHOT.jar --apollo.meta=$CONFIG_SERVERS
fi

docker  run :

#############Start with skywalking 

sudo docker run  -it -d --restart unless-stopped --name ICIL-ESOLUTION-APPLICATION -m 400m --memory-reservation 200m --net host -v /opt/docker/logs/icil-epluss-service/log/:/tmp/esolutions/logger/info -v /etc/localtime:/etc/localtime:ro  -e  'AP_ENV=dev'  -e 'JAVA_OPTS=-Xmx128m -Xss512k'  -e 'CONFIG_SERVERS=http://10.190.30.153:8080'  -e 'AGENT_SERVICE_NAME=ICIL-ESOLUTION-APPLICATION' -e 'AGENT_COLLECTOR_ADDRESS=10.160.3.153:11800' icildev/debug:icil-esolution-application-v1.4 

#############Start without skywalking 

sudo docker run  -it -d --restart unless-stopped --name ICIL-ESOLUTION-APPLICATION -m 400m --memory-reservation 200m --net host -v /opt/docker/logs/icil-epluss-service/log/:/tmp/esolutions/logger/info -v /etc/localtime:/etc/localtime:ro  -e  'AP_ENV=dev'  -e 'JAVA_OPTS=-Xmx128m -Xss512k'  -e 'CONFIG_SERVERS=http://10.190.30.153:8080' icildev/debug:icil-esolution-application-v1.4 

  -e 'CONFIG_SERVERS=http://10.160.3.153:8080'   == apollo 配置中心的config 的ip:port

  -e 'AGENT_SERVICE_NAME=ICIL-ESOLUTION-APPLICATION'  ==skywalking 代理项目名== 项目名

  -e 'AGENT_COLLECTOR_ADDRESS=10.160.3.153:11800'     ==skywalking 的collecor 的ip:port
-v /etc/localtime:/etc/localtime:ro   时间同步
docker run  -it -d --restart unless-stopped --name  icil-reception-service -m 500m --memory-reservation 200m --net host -v /opt/docker/logs/app/log/:/tmp/icil-payment-service/ -v /etc/localtime:/etc/localtime:ro  -e  'AP_ENV=dev'  -e 'JAVA_OPTS=-Xmx256m -Xss1024k'  -e 'CONFIG_SERVERS=http://192.168.31.123:8080' -e 'AGENT_SERVICE_NAME= reception-service' -e 'AGENT_COLLECTOR_ADDRESS=192.168.123.177:11800' 192.168.192.33:5000/dockerreponsitoryreception-service:tr_1.0.0 
举报

相关推荐

0 条评论