docker安装mariadb
1. docker pull mariadb 下载docker镜像
2. mkdir -p /home/data/mariadb 建一个目录作为和容器的映射目录
3. docker run --name mariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /home/data/mariadb:/var/lib/mysql -d mariadb
【容器内部的3306端口映射不可修改; 外部的映射端口可以修改为3307; 另外防火墙或者iptables不能停止,否则会出错 】
--name启动容器设置容器名称为mariadb
-p设置容器的3306端口映射到主机3306端口
-e MYSQL_ROOT_PASSWORD设置环境变量数据库root用户密码为输入数据库root用户的密码
-v设置容器目录/var/lib/mysql映射到本地目录 /home/data/mariadb
-d后台运行容器mariadb并返回容器id
4. docker ps 查看容器是否运行
5. docker container update --restart=always 容器id 修改容器为自启动
6. 进入容器:docker exec -it mariadb /bin/bash
7. 在容器内登录数据库: mysql -uroot -p123456
注意:
docker: Error response from daemon: driver failed programming external connectivity on endpoint mariadb (b4c8f84467d9d8d10f23b37e10b351349cb4f6d4a5b3e8b1bee20040d5679fa0): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 3306 -j DNAT --to-destination 172.17.0.2:3306 ! -i docker0: iptables: No chain/target/match by that name.
解决办法:
重启docker服务后再启动容器
service docker restart
docker start mycontainerName

浙公网安备 33010602011771号