docker安装mysql
docker search mysql //搜索mysql镜像
docker pull mysql:5.7 //获取镜像,也可以获取最新版
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 //启动
例如:docker run -p 3308:3306
//运行 MySQL 容器
//-p 3308:3306 :映射容器服务的 3306 端口到宿主机的 3308 端口,外部主机可以直接通过 宿主机ip:3308 访问到 MySQL 的服务。
注:docker run -d --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
// --name mysql-test 给容器起名,不起别名的话以后在 docker 里操作 MySQL 这个容器就只能用容器 id 来操作
//-d 是后台启动,不看日志了
docker images //查看本地镜像
docker ps -a //查看所有容器
docker rm root_ajser_1 //删除已创建但是未使用的容器
docker ps //查看docker 容器
docker exec -it 容器名称 (或者容器ID) /bin/bash //进入到docker容器里
mysql -u root -p //进入docker的mysql容器中,输入指令登录
菜鸟教程地址:
https://www.runoob.com/docker/docker-install-mysql.html
docker-compose.yml文件添加mysql配置
version: "2.1"
services:
mysql:
restart: always
image: mysql:5.7
container_name: mysql
ports:
- 3306:3306
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: liutao123456
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
--max_allowed_packet=128M
--sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
volumes:
- /data/docker/mysql/conf:/etc/mysql
- /data/docker/mysql/logs:/var/log/mysql
- /data/docker/mysql/data:/var/lib/mysql