Docker部署Yearning

Yearning 开源的MYSQL SQL语句审核平台
提供数据库字典查询,查询审计,SQL审核等多种功能

一,安装mysql
1,容器安装mysql

docker run -d -p 3306:3306 --privileged=true -v /data/docker/mysql/conf/my.cnf:/etc/my.cnf -v /data/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=dbaadmin1019 --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

参数说明:
run run 是运行一个容器
-d  表示后台运行
-p  表示容器内部端口和服务器端口映射关联
–privileged=true 设值MySQL 的root用户权限, 否则外部不能使用root用户登陆
-v /docker/mysql/conf/my.cnf:/etc/my.cnf 将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
-v /docker/mysql/data:/var/lib/mysql  同上,映射数据库的数据目录, 避免以后docker删除重新运行MySQL容器时数据丢失
-e MYSQL_ROOT_PASSWORD=dbaadmin1019   设置MySQL数据库root用户的密码
–name mysql     设值容器名称为mysql
mysql:5.7  表示从docker镜像mysql:5.7中启动一个容器
–character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设值数据库默认编码

2,新建MySQL用户
先进入容器
docker exec -it mysql bash
执行MySQL命令, 输入root密码, 连接MySQL

mysql -uroot -p

3,创建yearning数据库

CREATE DATABASE yearning CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
grant all on yearning.* to 'yearning'@'%' identified by 'sMHcsff32wUv1019';

二,制作Yearning镜像
1,Yearning 下载
Yearning-go 提供二进制下载包
下载地址 https://github.com/cookieY/Yearning/releases
请选择最新版本 在 Assets 中选择 Yearning-x.x.x.linux-amd64.zip 包进行下载

解压
可以看到Dockerfile和docker-compose.yml

2,编辑配置文件

[root@centos8 Yearning]# vim conf.toml 
[Mysql]
Db = "yearning"
Host = "127.0.0.1"
Port = "3306"
Password = "sMHcsff32wUv1019"
User = "yearning"

[General]
SecretKey = "dbcjqheupqjsuwsm"
Hours = 4

3,制作镜像
docker build -t yearning-2.3.5:v2.3.5 .

[root@centos8 Yearning]# docker build -t yearning-2.3.5:v2.3.5 .
Sending build context to Docker daemon  44.02MB
Step 1/8 : FROM alpine:3.12
 ---> 48b8ec4ed9eb
Step 2/8 : LABEL maintainer="HenryYee-2020/11/16"
 ---> Running in 2a9fddcb03a6
Removing intermediate container 2a9fddcb03a6
 ---> 979bdea4ab51
Step 3/8 : EXPOSE 8000
 ---> Running in deffbd4c7268
Removing intermediate container deffbd4c7268
 ---> 93c5feda2665
Step 4/8 : COPY Yearning  /opt/Yearning
 ---> aa6c244ee857
Step 5/8 : COPY conf.toml /opt/conf.toml
 ---> dfba4b31c0e7
Step 6/8 : RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.12/main/" > /etc/apk/repositories &&       apk add --no-cache tzdata libc6-compat &&       ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &&       echo "Asia/Shanghai" >> /etc/timezone &&       echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf
 ---> Running in 52473bc2ed02
fetch http://mirrors.ustc.edu.cn/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
(1/2) Installing libc6-compat (1.1.24-r10)
(2/2) Installing tzdata (2021d-r0)
Executing busybox-1.31.1-r20.trigger
OK: 9 MiB in 16 packages
Removing intermediate container 52473bc2ed02
 ---> c4097091de33
Step 7/8 : WORKDIR /opt
 ---> Running in 3c402bad1275
Removing intermediate container 3c402bad1275
 ---> 1eab980f9be2
Step 8/8 : CMD /opt/Yearning install && /opt/Yearning run
 ---> Running in 584cc45b4a90
Removing intermediate container 584cc45b4a90
 ---> 53aa5b114eab
Successfully built 53aa5b114eab
Successfully tagged yearning-2.3.5:v2.3.5

docker images
[root@centos8 Yearning]# docker images
REPOSITORY                      TAG        IMAGE ID       CREATED          SIZE
yearning-2.3.5                  v2.3.5     4540b419f538   34 seconds ago   29.4MB

4,启动yearning

docker run -d \
  --name yearning \
  --restart always \
  -p 8000:8000 \
  -e MYSQL_USER=yearning \
  -e MYSQL_ADDR=192.168.50.85:3306 \
  -e MYSQL_PASSWORD=sMHcsff32wUv1019 \
  -e MYSQL_DB=yearning \
  -e TZ="Asia/Shanghai" \
 yearning-2.3.5:v2.3.5

5,页面访问
http://192.168.50.85:8000/#/manage/db
默认密码:admin/Yearning_admin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值