docker-compose部署skywalking
[root@vm es-sky]# mkdir -p es/data/; chmod 777 es/data/
[root@vm es-sky]# cat docker-compose.yaml
version: '3'
services:
elasticsearch:
image: elasticsearch:7.0.0
container_name: elasticsearch
privileged: true
environment:
- "cluster.name=elasticsearch"
- "TZ=Asia/Shanghai"
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx1096m"
- bootstrap.memory_lock=true
volumes:
- ./es/plugins:/usr/share/elasticsearch/plugins
- ./es/data:/usr/share/elasticsearch/data:rw
- ./es/logs:/user/share/elasticsearch/logs:rw
ports:
- 9200:9200
- 9300:9300
oap-server:
image: apache/skywalking-oap-server:8.0.0-es7
container_name: oap-server
environment:
- "TZ=Asia/Shanghai"
- "SW_STORAGE=elasticsearch7"
- "SW_STORAGE_ES_CLUSTER_NODES=elasticsearch:9200"
ports:
- 11800:11800
- 12800:12800
depends_on:
- elasticsearch
links:
- elasticsearch
oap-ui:
image: apache/skywalking-ui:8.0.0
container_name: oap-ui
environment:
- "TZ=Asia/Shanghai"
- "SW_OAP_ADDRESS=oap-server:12800"
ports:
- 8080:8080
depends_on:
- oap-server
links:
- oap-server
[root@vm es-sky]# docker-compose pull
[root@vm es-sky]# docker-compose up -d
[root@vm es-sky]# curl localhost:9200
{
"name" : "d23293b26e19",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "XNrXZmxmStWTpbfS12EriA",
"version" : {
"number" : "7.0.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "b7e28a7",
"build_date" : "2019-04-05T22:55:32.697037Z",
"build_snapshot" : false,
"lucene_version" : "8.0.0",
"minimum_wire_compatibility_version" : "6.7.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
[root@vm es-sky]# docker start oap-server
oap-server
#发现偶尔es服务没启动ok,导致oap不能用,重启下oap,未配置健康检查,因为部分命令不可用,还需要装包打镜像
dockerfile 构建启动
FROM centos:v7.9
ADD target/*.jar app.jar
ADD ./skywalking-agent.jarskywalking-agent.jar #JENKINS做cp /root/skywalking-agent.jar .
ENV JAVA_OPTS “-javaagent:/skywalking-agent.jar -Dskywalking.collector.backend_service=10.1.0.24:11800 -Dskywalking.agent.service_name=my-app”
ENTRYPOINT exec java $JAVA_OPTS -jar /app.jar
指定IP的配置
[root@vm es-sky]# cat docker-compose.yaml
version: '3'
services:
elasticsearch:
image: elasticsearch:7.0.0
container_name: elasticsearch
privileged: true
environment:
- "cluster.name=elasticsearch"
- "TZ=Asia/Shanghai"
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx1096m"
- bootstrap.memory_lock=true
volumes:
- ./es/plugins:/usr/share/elasticsearch/plugins
- ./es/data:/usr/share/elasticsearch/data:rw
- ./es/logs:/user/share/elasticsearch/logs:rw
ports:
- 9200:9200
- 9300:9300
networks:
proxy:
ipv4_address: 10.22.0.11
oap-server:
image: apache/skywalking-oap-server:8.0.0-es7
container_name: oap-server
environment:
TZ: Asia/Shanghai
SW_STORAGE: elasticsearch7
SW_STORAGE_ES_CLUSTER_NODES: 10.22.0.11:9200
ports:
- 11800:11800
- 12800:12800
depends_on:
- elasticsearch
networks:
proxy:
ipv4_address: 10.22.0.12
oap-ui:
image: apache/skywalking-ui:8.0.0
container_name: oap-ui
environment:
- "TZ=Asia/Shanghai"
- "SW_OAP_ADDRESS=10.22.0.12:12800"
ports:
- 8080:8080
depends_on:
- oap-server
networks:
proxy:
ipv4_address: 10.22.0.3
networks:
proxy:
ipam:
config:
- subnet: 10.22.0.0/24