https://redash.io/help/open-source/dev-guide/docker
1.install docker
分别执行
ssh user@remote-server-name
sudo yum install docker
sudo yum remove docker docker-common docker-selinux docker-engine
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce
参考文档:https://www.cyberciti.biz/faq/install-use-setup-docker-on-rhel7-centos7-linux/
install docker-compose:
sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo mv /usr/local/bin/docker-compose /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose
2.install node.js
yum install -y gcc-c++ make
curl -sL https://rpm.nodesource.com/setup_12.x | sudo -E bash -
sudo yum install nodejs
3.开始安装redash
登录服务器 ,clone redash代码
ssh yangqiang@192.168.199.129
cd /opt
git clone https://github.com/getredash/redash.gitcdredash/
cd redash/
开始编译:
docker-compose up -d
-- 下面这一句得运行,不然后续很多报错
sudo -s
npm install
# Create tables
docker-compose run --rm server create_db
# Create database for tests
docker-compose run --rm postgres psql -h postgres -U postgres -c"create database tests"
npm run build
npm run start
跑完之后 访问 5000端口就可以啦:
http://192.168.199.129:5000/setup

二、备份&&还原redash
redash是基于docker的,底层数据都是存储在postgresl,我们先找到 postgres 的 container id:
docker ps |grep postgres

备份postgres 的数据,不需要进入 docker container,直接在外面运行:
docker exec -t -u postgres 1369f1ec99aa pg_dumpall -c > dump_test.sql

还原数据
cat dump_test.sql | docker exec -i 1369f1ec99aa psql -Upostgres

三、Redash底层存储
redash的底层数据都存储在 postgresql,想了解下表结构之类,需要进入对应的 docker container
sudo docker exec -it 1369f1ec99aa bash
进入 psql:
psql -U postgres

查看表结构:
\d

想查看表内容,跟其他sql一样,比如:
select * from users;

在这里就可以直接基于底层数据表 增删查改啦
网友评论