1.先安装docker,docker安装见 文章:“centOs7部署docker”
2.docker-compose安装
2.1,先安装python3.7,
2.1.1python3.7可能用到的依赖
yum install openssl-devel bzip2-devel expat-devel gbdm-devel readline-devel sqlite-devel libffi-devel tk-devel
2.1.2下载python3.7编译安装到安装目录
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
tar -xzvf Python-3.7.0.tgz -C
cd ./Python-3.7.0
mkdir /usr/local/python3
./configure --prefix=/usr/local/python3 --enable-optimizations
如果遇到configure :error:noacceptable C compiler found in $PATH
解决办法:#yum install gcc
安装python3.7出现ModuleNotFoundError: No module named '_ctypes’解决办法
yum -y install libffi-devel tk-devel
make
make install
2.1.3更改/usr/bin/python 链接
cd /usr/bin
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
2.2 安装docker-compose
pip3 install docker-compose
2.2.1建立链接
ln -s /usr/local/python3/bin/docker-compose /usr/bin/docker-compose
ln -s /usr/local/python3/bin/docker-compose /usr/local/bin/docker-compose
2.3编写yml脚本,文件名为docker-compose.yml,
如下:
version: “3”
services:
metabase:
image: metabase/metabase:latest
container_name: metabase
hostname: node5
ports:
- “3000:3000”
restart: always
volumes:
- “./metabase:/metabase-data”
depends_on:
- mysql
environment:
JAVA_TIMEZONE: Asia/Shanghai
MB_DB_TYPE: mysql
MB_DB_DBNAME: metabase
MB_DB_HOST: 数据库ip
MB_DB_PORT: 3306
MB_DB_USER: metabase
MB_DB_PASS: metabase数据库用户密码
mysql:
image: mysql:5.7
container_name: mysql
hostname: node5
ports:
- “3306:3306”
restart: always
volumes:
- “./mysql/data:/var/lib/mysql”
- “./mysql/conf.d:/etc/mysql/conf”
command: [
‘–character-set-server=utf8mb4’,
‘–collation-server=utf8mb4_unicode_ci’,
‘–default-time-zone=+8:00’,
‘–lower-case-table-names=1’,
‘–default-authentication-plugin=mysql_native_password’
]
environment:
MYSQL_ROOT_PASSWORD: root密码
MYSQL_DATABASE: metabase
MYSQL_USER: metabase
MYSQL_PASSWORD: 你的密码
2.4修改数据库metabase用户权限,
以root用户登录,
CREATE USER metabase@‘localhost’ IDENTIFIED BY ‘密码’;
update mysql.user set host=‘%’ where user=‘metabase’;
GRANT Process ON . TO ‘metabase’@‘%’;
GRANT Event ON metabase.* TO ‘metabase’@‘%’;
GRANT ALL PRIVILEGES on metabase.* TO metabase@‘%’;
FLUSH PRIVILEGES;
2.5 下载镜像并启动,到docker-compose.yml目录 ,
建立好yml文件中配置对应的目录 ,执行如下命领即可,
docker-compose up -d
如果报错如下:
解决:
1.修python目录权限
2.修改docker 用户组权限,如下图,改成999
vi /etc/group
再次docker-compose up -d,
一般情况下可以跑起来。