1、确保linux系统里已有docker
2、下载安装包mysql5.7
docker pull mysql:5.7
3、创建容器
docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --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=123456 设置MySQL数据库root用户的密码
- --name mysql 设值容器名称为mysql
- mysql:5.7 表示从docker镜像mysql:5.7中启动一个容器
- --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设值数据库默认编码
4、如果是云服务器,请确保对外端口已开启
5、配置mysql用户,此处的mysql是我们创建的容器名称
docker exec -it mysql bash
6、执行mysql命令,连接mysql,回车输入密码 刚刚创建容器时默认密码给了 123456
mysql -u root -p
7、配置新的mysql用户并赋权限 【%代表可远程访问 localhost 表示只能本地登陆】创建chemex用户,密码为chemex 必须要赋予权限,root用户也需要赋予权限,否则安装后报错。必须进到数据库内操作!!
GRANT ALL PRIVILEGES ON *.* TO 'chemex'@'%' IDENTIFIED BY 'chemex' WITH GRANT OPTION;
8、修改mysql用户的密码
set password for root@localhost = password('新密码')
9、使用软件测试链接数据库
10、新建数据库chemex
11、docker安装chemex(官网命令如下)
docker pull celaraze/chemex:latest
docker run -itd --restart=always -p 80:80 \
-e DB_HOST=数据库地址 \
-e DB_PORT=数据库端口 \
-e DB_DATABASE=数据库名称 \
-e DB_USERNAME=数据库账户 \
-e DB_PASSWORD=数据库密码 \
celaraze/chemex
实际安装后会显示初始密码账号admin密码admin无法登录。这时候安装的时候需要在docker run后面加上-e INSTALL=true
Docker run启动之后,显示admin用户已被禁用 · Issue #I50BSI · celaraze/chemex - Gitee.com
具体命令如下
docker pull celaraze/chemex:latest
docker run -e INSTALL=true -itd --restart=always -p 80:80 \
> -e DB_HOST=192.168.8.96 \
> -e DB_PORT=3306 \
> -e DB_DATABASE=chemex \
> -e DB_USERNAME=chemex \
> -e DB_PASSWORD=chemex \
> celaraze/chemex
输入刚才创建的用户账号密码及数据库名称
12、访问本地IP地址进入chemex资产管理系统,显示正常。