docker在创建mysql容器时设置参数
时间: 2024-09-12 07:08:44 浏览: 40
Docker的MySQL容器时区问题修改
Docker用于MySQL容器时,可以使用`docker run`命令行选项来设置一些参数。以下是一些常见的配置:
1. **端口映射**:
- `-p`: 映射主机的某个端口到容器内部的MySQL端口,如 `docker run -p 3306:3306 mysql`,将主机的3306端口映射给容器。
2. **数据卷**:
- `-v` 或 `--volume`: 将主机的一个目录挂载到容器内的MySQL数据目录,例如 `docker run -v /host/data/mysql:/var/lib/mysql mysql`,这样可以在宿主机上持久化存储数据库数据。
3. **环境变量**:
- `MYSQL_ROOT_PASSWORD` 或其他类似环境变量:设置MySQL root用户的密码,例如 `docker run -e MYSQL_ROOT_PASSWORD=mysecretpassword mysql`.
4. **启用特定功能**:
- `-e` 或 `--env`: 设置启动时需要的环境变量,比如开启SSL `docker run -e MYSQL_TLS_SERVER CERT=your-cert-key.pem mysql`.
5. **初始化脚本**:
- `--init-file` 或 `-i`: 提供一个bash或SQL脚本来在容器启动时执行,如创建用户或数据库等操作。
完整的示例可能是这样的:
```sh
docker run --name my-mysql \
-p 3306:3306 \
-v /path/to/host/mysql-data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=mysecretpwd \
-e MYSQL_USER=myuser -e MYSQL_PASSWORD=mypassword \
mysql:latest
```
在这个例子中,我们设置了MySQL服务监听3306端口,数据卷挂载本地目录,以及root和新用户的权限信息。
阅读全文