solo 升级 以及数据库备份
solo 在重新拉取镜像升级后会重新初始化数据库,导致之前的数据丢失,所以有必要在升级前备份数据库。可以使用 mysqldump 命令备份数据库
- 备份数据库
使用 mysqldump 备份数据库
docker exec -it [容器名/id] bash -c 'mysqldump -uroot -p123456 solo >/opt/solo.sql && exit'
- solo 升级
--拉取最新镜像
docker pull b3log/solo:latest
--停止当前容器
docker stop solo
--删除当前容器
docker rm solo
-- 重新部署容器
docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="123456" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true" \
--volume /home/langzi/app/solo/skins:/opt/solo/skins/ \
b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=8080
- 其中--env JDBC_PASSWORD="123456" 换成自己数据库的密码
- --server_host=localhost 更好成自己主机 ip 或者域名
- 恢复数据库
docker exec -it mysql5.7 bash
mysql -uroot -p123456
source /opt/solo.sql
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于