一、安装RocketMQ
1、拉取镜像
docker search rocketmq //从镜像站点查询版本
docker pull rocketmqinc/rocketmq //拉取版本
docker inspect mysql |grep -i "IPADDRESS" //查看容器内地址
2、创建实例并启动
安装nameserver
mkdir -p /mydata/rocketmq/nameserver/logs /mydata/rocketmq/nameserver/store
docker run -d --restart=always --name rmqnamesrv --privileged=true \
-p 9876:9876 \
-v /mydata/rocketmq/nameserver/logs:/root/logs \
-v /mydata/rocketmq/nameserver/store:/root/store \
-e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv
参数说明:
-d 以守护进程的方式启动
--restart=always docker重启时候容器自动重启
--name rmqnamesrv 把容器的名字设置为rmqnamesrv
-p 9876:9876 把容器内的端口9876挂载到宿主机9876上面
-v /docker/rocketmq/nameserver/logs:/root/logs 目录挂载
-v /docker/rocketmq/nameserver/store 目录挂载
rmqnamesrv 容器的名字
-e “MAX_POSSIBLE_HEAP=100000000” 设置容器的最大堆内存为100000000
rocketmqinc/rocketmq 使用的镜像名称
sh mqnamesrv 启动namesrv服务
安装broker
mkdir -p /mydata/rocketmq/conf
创建broker.conf 配置文件
vi /mydata/rocketmq/conf/broker.conf
# 所属集群名称,如果节点较多可以配置多个
brokerClusterName = DefaultCluster
#broker名称,master和slave使用相同的名称,表明他们的主从关系
brokerName = broker-a
#0表示Master,大于0表示不同的slave
brokerId = 0
#表示几点做消息删除动作,默认是凌晨4点
deleteWhen = 04
#在磁盘上保留消息的时长,单位是小时
fileReservedTime = 48
#有三个值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和异步表示Master和Slave之间同步数据的机制;
brokerRole = ASYNC_MASTER
#刷盘策略,取值为:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盘和异步刷盘;SYNC_FLUSH消息写入磁盘后才返回成功状态,ASYNC_FLUSH不需要;
flushDiskType = ASYNC_FLUSH
# 设置broker节点所在服务器的ip地址
brokerIP1 = 192.168.52.136
# 磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
diskMaxUsedSpaceRatio=95
构建容器:
docker run -d --restart=always --name rmqbroker --link rmqnamesrv:namesrv -p 10911:10911 -p 10909:10909 --privileged=true\
-v /mydata/rocketmq/data/broker/logs:/root/logs\
-v /mydata/rocketmq/data/broker/store:/root/store\
-v /mydata/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf\
-e "NAMESRV_ADDR=namesrv:9876"\
-e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq\
sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
参数说明:
–restart=always | docker重启时候镜像自动重启
-name rmqbroker | 把容器的名字设置为rmqbroker
–link rmqnamesrv:namesrv | 和rmqnamesrv容器通信
-p 10911:10911 | 把容器的非vip通道端口挂载到宿主机
-p 10909:10909 | 把容器的vip通道端口挂载到宿主机
-e “NAMESRV_ADDR=namesrv:9876” | 指定namesrv的地址为本机namesrv的ip地址:9876
-e “MAX_POSSIBLE_HEAP=200000000” rocketmqinc/rocketmq sh mqbroker | 指定broker服务的最大堆内存
rocketmqinc/rocketmq | 使用的镜像名称
sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf | 指定配置文件启动broker节点
3.创建rockermq-console服务
拉取镜像:
docker pull pangliang/rocketmq-console-ng
启动rockermq-console容器:
docker run -d --restart=always --name rmqadmin\
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.11.107:9876 \
-Dcom.rocketmq.sendMessageWithVIPChannel=false" \
-p 8080:8080 pangliang/rocketmq-console-ng
二、 安装onlyoffice
1.直接执行:(拉去镜像创建目录可省略)
docker run -i -t -d -e TZ="Asia/Shanghai" -p 8090:80 --restart=always \
-v /mydata/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
-v /mydata/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
-v /mydata/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
-v /mydata/onlyoffice/DocumentServer/db:/var/lib/postgresql \
-e JWT_SECRET=123456 onlyoffice/documentserver
2.启动demo:
docker exec 878e3486b6b4 sudo supervisorctl start ds:example //红色换成自己容器的id
3.访问http://ip:8090
4. 查看JWT_SECRET
docker exec 878e3486b6b4 /var/www/onlyoffice/documentserver/npm/json \
-f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
5. 参数说明
-v /mydata/onlyoffice/DocumentServer/logs:/var/log/onlyoffice | onlyoffice日志
-v /mydata/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data | 443通讯证书
-v /mydata/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice | 文件缓存
-v /mydata/onlyoffice/DocumentServer/db:/var/lib/postgresql | 数据库-e JWT_SECRET=123456 onlyoffice/documentserver |api SECRET
6.修改挂载的目录权限,以防万一
chmod -R 775 /mydata/onlyoffice/DocumentServer/logs
chmod -R 775 /mydata/onlyoffice/DocumentServer/data
chmod -R 775 /mydata/onlyoffice/DocumentServer/lib
chmod -R 775 /mydata/onlyoffice/DocumentServer/db
文章来源:https://www.toymoban.com/news/detail-494181.html
三.安装nextcloud
docker run -i -t -d \
-p 8181:80 --restart=always --name nextcloud \
-v /nextcloud/nextcloud:/var/www/html -v /nextcloud/apps:/var/www/html/custom_apps \
-v /nextcloud/config:/var/www/html/config \
-v /nextcloud/data:/var/www/html/data \
-v /nextcloud/theme:/var/www/html/themes/ nextcloud文章来源地址https://www.toymoban.com/news/detail-494181.html
到了这里,关于docker 安装各种基础环境二的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!