jinjianming commented on issue #9038:
URL: https://github.com/apache/apisix/issues/9038#issuecomment-1462016122
I also use the same problem in the form of docker-compose deployment;
# control_plane config:
```
root@node1:/home/apisix/docker/apisix-docker/example# cat
apisix_cp_conf/config.yaml
apisix:
node_listen: 9280
enable_ipv6: false
allow_admin:
- 0.0.0.0/0
control:
ip: "0.0.0.0"
port: 9092
deployment:
role: control_plane
role_control_plane:
config_provider: etcd
conf_server:
listen: 0.0.0.0:9280
cert: /certs/cp/apisix-cp.pem
cert_key: /certs/cp/apisix-cp-key.pem
admin:
allow_admin:
- 0.0.0.0/0
etcd:
host: # it's possible to define multiple etcd
hosts addresses of the same etcd cluster.
- "http://etcd:2379" # multiple etcd address
prefix: "/apisix" # apisix configurations prefix
timeout: 30 # 30 seconds
```
# data_plane config:
```
root@node1:/home/apisix/docker/apisix-docker/example# cat
apisix_dp_conf/config.yaml
apisix:
ssl:
ssl_trusted_certificate: /certs/ca/rootCA.pem
enable_debug: true
node_listen: 9080
enable_ipv6: false
enable_control: true
control:
ip: "0.0.0.0"
port: 9092
deployment:
role: data_plane
role_data_plane:
config_provider: control_plane
control_plane:
host:
- "https://apisix-control-plane-control-plane:9280"
prefix: "/apisix"
timeout: 30
#tls:
# verify: false
certs:
cert: /certs/dp/apisix-dp.pem
cert_key: /certs/dp/apisix-dp-key.pem
trusted_ca_cert: /certs/ca/rootCA.pem
admin:
allow_admin:
- 0.0.0.0/0
plugin_attr:
prometheus:
export_addr:
ip: "0.0.0.0"
port: 9091
```
# docker compose file:
```
version: "3"
services:
apisix-dashboard:
image: apache/apisix-dashboard:3.0.0-alpine
restart: always
volumes:
- ./dashboard_conf/conf.yaml:/usr/local/apisix-dashboard/conf/conf.yaml
ports:
- "9000:9000"
networks:
apisix:
apisix:
image: apache/apisix:${APISIX_IMAGE_TAG:-3.2.0-debian}
restart: always
volumes:
- ./apisix_dp_log:/usr/local/apisix/logs
- ./apisix_dp_conf/config.yaml:/usr/local/apisix/conf/config.yaml:ro
- ./certs/dp:/certs/dp
- ./certs/ca:/certs/ca
depends_on:
- apisix-control-plane-control-plane
##network_mode: host
ports:
- "9080:9080/tcp"
networks:
apisix:
etcd:
image: bitnami/etcd:3.4.15
restart: always
volumes:
- etcd_data:/bitnami/etcd
environment:
ETCD_ENABLE_V2: "true"
ALLOW_NONE_AUTHENTICATION: "yes"
ETCD_ADVERTISE_CLIENT_URLS: "http://etcd:2379"
ETCD_LISTEN_CLIENT_URLS: "http://0.0.0.0:2379"
ports:
- "12379:2379/tcp"
networks:
apisix:
apisix-control-plane-control-plane:
image: apache/apisix:${APISIX_IMAGE_TAG:-3.2.0-debian}
restart: always
volumes:
- ./apisix_cp_log:/usr/local/apisix/logs
- ./apisix_cp_conf/config.yaml:/usr/local/apisix/conf/config.yaml:ro
- ./certs/cp:/certs/cp
- ./certs/ca:/certs/ca
depends_on:
- etcd
##network_mode: host
ports:
- "9180:9180/tcp"
- "9280:9280/tcp"
networks:
apisix:
web1:
image: nginx:1.19.0-alpine
restart: always
volumes:
- ./upstream/web1.conf:/etc/nginx/nginx.conf
ports:
- "9081:80/tcp"
environment:
- NGINX_PORT=80
networks:
apisix:
web2:
image: nginx:1.19.0-alpine
restart: always
volumes:
- ./upstream/web2.conf:/etc/nginx/nginx.conf
ports:
- "9082:80/tcp"
environment:
- NGINX_PORT=80
networks:
apisix:
prometheus:
image: prom/prometheus:v2.25.0
restart: always
volumes:
- ./prometheus_conf/prometheus.yml:/etc/prometheus/prometheus.yml
ports:
- "9090:9090"
networks:
apisix:
grafana:
image: grafana/grafana:7.3.7
restart: always
ports:
- "3000:3000"
volumes:
- "./grafana_conf/provisioning:/etc/grafana/provisioning"
- "./grafana_conf/dashboards:/var/lib/grafana/dashboards"
- "./grafana_conf/config/grafana.ini:/etc/grafana/grafana.ini"
networks:
apisix:
networks:
apisix:
driver: bridge
volumes:
etcd_data:
driver: local
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]