1.通过docker安装onlyoffice
找一台能访问互联网的服务器下载onlyoffice镜像
sudo docker pull onlyoffice/documentserver
查看镜像
docker images
启动onlyoffice
docker run -itd \
--name onlyoffice1 \
--restart always \
-p 8099:80 \
-v /data/docker/onlyoffice/log:/var/log/onlyoffice \
-v /data/docker/onlyoffice/data:/var/www/onlyoffice/Data \
-v /data/docker/onlyoffice/lib:/var/lib/onlyoffice \
-v /data/docker/onlyoffice/db:/var/lib/postgresql \
-v /data/docker/onlyoffice/documentserver/local.json:/etc/onlyoffice/DocumentServer/local.json \
-v /data/docker/onlyoffice/documentserver/default.json:/etc/onlyoffice/DocumentServer/default.json \
-e JWT_ENABLED=false \
a2d24d7e0191
使用docker ps 查看镜像是否启动成功
进入onlyoffice容器
docker exec -it 50dd9cae653e(容器id)/bin/bash
启动之后我们发现rabbitmq的进程占用到了cpu的100%,导致onlyoffice无法正常使用。先关停onlyoffice已经封装好的rabbitmq。为避免docker重启之后rabbitmq自动启动,可将rabbitmq相关文件进行删除。
rm -rf /usr/lib/erlang
rm -rf /usr/sbin/rabbitmq-server
rm -rf /usr/lib/ocf/resource.d/rabbitmq
rm -rf /usr/share/rabbitmq
修改default.json和local.json:主要是mq,数据库,
允许私有ip通过配置(使用时OnlyOffice 打开文档时提示下载失败,报错
Error: DNS lookup xxx.xxx.xxx.xx(family:undefined, host:undefined) is not allowed. Because, It is private IP address.
)
nano /etc/onlyoffice/documentserver/default.json
nano /etc/onlyoffice/documentserver/local.json
启动nginx
确保在容器中:输入nginx并回车
启动onlyoffice
如果启动文档服务和文档转换服务有错误,请在容器中进入/var/log/onlyoffice/下面查看启动日志
sudo supervisord -c /etc/supervisor/supervisord.conf
//启动文档示例
sudo supervisorctl restart ds:example
//启动文档服务
sudo supervisorctl restart ds:docservice
//启动文档转换服务
sudo supervisorctl restart ds:converter
sudo sed 's,autostart=false,autostart=true,' -i /etc/supervisor/conf.d/ds-example.conf
启动成功后确保3000端口和8000端口能正常访问
2、安装rabbitmq
下载镜像
docker pull rabbitmq:latest
启动mq
docker run -d --hostname rabbitmq --name myrabbitmq -p 15672:15672 -p 5672:5672 rabbitmq:latest
进入容器
docker exec -it 24958b4c709a(容器id) /bin/bash
开启web管理界面
rabbitmq-plugins enable rabbitmq_management
浏览器访问控制台
http://ip:15672 guest guest
报错:Management API returned status code 500 -
因为是使用docker 容器安装的,所有需要进入容器
docker exec -it rabbitmq /bin/bash进入目录
cd /etc/rabbitmq/conf.d/执行命令
echo management_agent.disable_metrics_collector = false > management_agent.disable_metrics_collector.conf退出容器
exit重启rabbitmq
docker restart rabbitmq
3、安装mysql
docker pull mysql:8.0
docker run -itd --name mysql8.0 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root1234 mysql:8.0 --lower_case_table_names=1 --max_connections=10000;
备注:
lower_case_table_names=1:忽略大小写;
max_connections:最大连接数量;
–name:为容器指定一个名称,此处命名为mysql8.0
-e:配置信息,此处配置mysql的root用户的登陆密码
-p:端口映射,此处映射 主机3306端口 到 容器的3306端口
-d:后台运行容器,并返回容器ID;
3.1.登录容器
登录容器之前需要先启动容器:docker start 容器id
登录容器:docker exec -it 容器id /bin/bash
3.2.登录mysql
进入容器,从容器中登录MySQL:mysql -uroot -proot1234
3.3.设置远程连接
根据MySQL版本进行设置
(1)MySQL5.7版本的设置远程连接,使用命令:
use mysql;
grant all privileges on *.* to ‘root’@’%’ identified by ‘root1234’ with option;#设置远程连接
Flush privileges;#刷新权限
(2)MySQL8.0以上版本设置远程连接,使用命令:
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';#设置远程连接
Flush privileges;#刷新权限
3.4.docker中设置mysql数据库开机自启:
docker update mysql8.0 --restart=always 容器id
安装最新版sql后工具无法连接错误解决:
http://www.idccoupon.com/3432.html
4.redis安装
docker安装redis_docker 安装redis-CSDN博客5
5.mongo安装
docker安装mongo及问题解决_A吴广智的博客-CSDN博客