Docker Deployment
This article introduces the use of docker
to deploy the Apache ShenYu
gateway.
Before you read this document, you need to complete some preparations before deploying Shenyu according to the Deployment Prerequisites document.
#
Start Apache ShenYu Admindocker pull apache/shenyu-admin:${current.version}docker network create shenyu
- use
h2
to store data:
docker run -d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
- use
MySQL
to store data, follow the guide document to initialize the database, copy mysql-connector.jar to/$(your_work_dir)/ext-lib
:
docker run -v /${your_work_dir}/ext-lib:/opt/shenyu-admin/ext-lib \-e "SPRING_PROFILES_ACTIVE=mysql" \-e "spring.datasource.url=jdbc:mysql://${your_ip_port}/shenyuuseUnicode=true&characterEncoding=utf8 \&useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=convertToNull" \-e "spring.datasource.username=${your_username}" \-e "spring.datasource.password=${your_password}" \-d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
another way is to put the application.yml
、application-mysql.yml
configuration in ${your_work_dir}/conf from Configure address , modify the configuration spring.profiles.active = mysql
in application.yml
, and then execute the following statement:
docker run -v ${your_work_dir}/conf:/opt/shenyu-admin/conf \-v /${your_work_dir}/ext-lib:/opt/shenyu-admin/ext-lib \-d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
- use
PostgreSql
to store data, follow the guide document to initialize the database, execute the following statement:
docker run -e "SPRING_PROFILES_ACTIVE=pg" \-e "spring.datasource.url=jdbc:postgresql://${your_ip_port}/shenyu?useUnicode=true&characterEncoding=utf-8&useSSL=false" \-e "spring.datasource.username=${your_username}" \-e "spring.datasource.password=${your_password}" \-d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
another way is to put the application.yml
、application-pg.yml
configuration in ${your_work_dir}/conf, modify the configuration spring.profiles.active = pg
in application.yml
,and then execute the following statement:
docker run -v ${your_work_dir}/conf:/opt/shenyu-admin/conf \-d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
- use
Oracle
to store data, follow the guide document to initialize the database, execute the following statement:
docker run -e "SPRING_PROFILES_ACTIVE=oracle" -e "spring.datasource.url=jdbc:oracle:thin:@localhost:1521/shenyu" \-e "spring.datasource.username=${your_username}" \-e "spring.datasource.password=${your_password}" \-d -p 9095:9095 --net shenyu apache/shenyu-admin:${current.version}
another way is to put the application.yml
、application-oracle.yml
configuration in ${your_work_dir}/conf, modify the configuration spring.profiles.active = oracle
in application.yml
, and then execute the following statement:
docker run -v ${your_work_dir}/conf:/opt/shenyu-admin/conf -d -p 9095:9095 \--net shenyu apache/shenyu-admin:${current.version}
#
Start Apache ShenYu BootstrapIn the host, the directory where the bootstrap configuration file is located is recorded as $BOOTSTRAP_CONF
.
docker network create shenyudocker pull apache/shenyu-bootstrap:${current.version}docker run -d \ -p 9195:9195 \ -v $BOOTSTRAP_CONF:/opt/shenyu-bootstrap/conf \ apache/shenyu-bootstrap:${current.version}