-
Notifications
You must be signed in to change notification settings - Fork 213
docker快速搭建开发环境
andyz168 edited this page Mar 23, 2023
·
1 revision
以下IP【192.168.1.11】根据自己真实的进行修改,密码【youpasswd】根据自己需要修改,端口映射根据自己需要修改,也可以映射原端口。
# 执行创建一个临时的mysql
docker run --name mysqltemp mysql:5.7
# 将配置文件/etc/mysql/my.cnf,复制出来到/home/mysqliot/my.cnf,如果有错误请百度。
docker cp mysqltemp:/etc/mysql/my.cnf /home/mysqliot
# 删除临时mysql
docker stop mysqltemp
docker rm mysqltemp
# 将数据文件挂载到/home/mysqliot/datadir,将配置文件挂载到/home/mysqliot/my.cnf,
# MYSQL_ROOT_PASSWORD设置密码,账号默认是root。
# 将端口3306映射到3307,
# --lower-case-table-names=1 忽略大小写
# 比如这个连接字符串
# jdbc:mysql://192.168.1.11:3308/thinglinks?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
docker run --privileged=true --name iot-mysql --restart=always -p 3307:3306 -v /home/mysqliot/datadir:/var/lib/mysql -v /home/mysqliot/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=youpasswd -d mysql:5.7 --lower-case-table-names=1
# 将数据文件挂载到/home/redisiot/data,将配置文件挂载到/home/redisiot/redis.conf,
# requirepass设置密码。
# host: 192.168.1.11
# port: 6380
# password: youpasswd
docker run -itd --restart=always --name iot-redis -p 6380:6379 -v /home/redisiot/redis.conf:/etc/redis/redis.conf -v /home/redisiot/data:/data redis --requirepass "youpasswd" --bind 0.0.0.0 --appendonly yes
# 挂载数据/home/taos/datav3,挂载日志/home/taos/logv3
# --hostname 是Linux的hostname可以用hostname命令进行查看
# /usr/share/zoneinfo/Asia/Shanghai用本地时间东八区运行程序
docker run -d --name iot-tdenginev3 --hostname="linux8" -v /home/taos/logv3:/var/log/taos -v /home/taos/datav3:/var/lib/taos -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime -p 6030-6049:6030-6049 -p 6030-6049:6030-6049/udp tdengine/tdengine:3.0.3.0
# 启动完成之后,进入容器创建数据库,
# 或者用tdenginegui连接上去,进行创建,连接IP:192.168.1.11,连接端口:6041,连接账号:root,连接默认密码:taosdata。
CREATE DATABASE thinglinks KEEP 365 DURATION 10 BUFFER 16 WAL_LEVEL 1;
docker run --name iotnacos --restart=always -d -p 8848:8848 -p 9848:9848 -p 9849:9849 --env MODE=standalone --env NACOS_SERVER_IP=192.168.1.11 nacos/nacos-server
# 运行mqnamesrv
docker run -d -p 9876:9876 -v /home/rocketmq/iotrocketmq/logs:/root/logs -v /home/rocketmq/iotrocketmq/store:/root/store --name iotrmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv
# 运行 mqbroker
docker run -d -p 10911:10911 -p 10909:10909 -v /home/rocketmq/broker/logs:/root/logs -v /home/rocketmq/broker/store:/root/store -v /home/rocketmq/broker/broker.conf:/opt/rocketmq/conf/broker.conf --name iotrmqbroker --link iotrmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker -c /opt/rocketmq/conf/broker.conf
# 运行console即web页面
docker run -d -p 8081:8080 -e "JAVA_OPTS=-Drocketmq.config.namesrvAddr=192.168.1.11:9876 -Drocketmq.config.isVIPChannel=false" --name iotweb styletang/rocketmq-console-ng
# 都运行完成可以访问http://192.168.1.11:8081/