先把镜像下载下来
docker pull mariadb
从第四行开始就是下载的镜像文件了,因为docker有一个文件分层机制(联合文件系统),所以一个镜像会分成好几个文件。
镜像下载完成之后把容器起起来
docker run --name mariadb01 -p 3344:3306 -e MYSQL_ROOT_PASSWORD=09183165 -v /root/docker/mariadb/data:/var/lib/mysql -d mariadb
- – name启动容器设置容器名称为mariadb01
- -p 宿主机端口:容器端口,即设置容器的3306端口映射到主机3344端口,后面我们可以在宿主机里通过这个端口访问docker里的这个mariadb
- -e MYSQL_ROOT_PASSWORD设置环境变量数据库root用户密码为输入数据库root用户的密码
- -v 设置容器目录/var/lib/mysql映射到本地目录/root/docker/mariadb/data
- -d 后台运行容器mariadb并返回容器id
执行完成之后返回了容器的ID
然后我们可以用这个ID 进入dockers里:
docker exec -it c9056f447e1a bash
-it 进入容器
-bash 与容器的交互方式,通过bash命令行
或者修改上面的创建容器的命令,让我们可以创建完成之后直接进入容器:
docker run --name mariadb01 -p 3344:3306 -e MYSQL_ROOT_PASSWORD=09183165 -v /root/docker/mariadb/data:/var/lib/mysql -it mariadb bash
这个容器就是一个linux系统,进入之后我们就像正常使用Linux系统一样通过命令行交互就可以了
在宿主机里我们可以通过这个命令来连接到docker里的Mariadb里:
mysql -h localhost -P 3344 -uroot -p
3334就是我们前面设置了映射到的宿主机的端口号
因为设置了共享的文件目录(/var/lib/mysql),所以该目录下的数据docker都可以访问到。