Docker 安装Mysql,RabbitMQ
安装Mysql
- 拉取镜像
docker pull mysql:latest
- 运行容器
docker run -itd --name mysql -p 33061:3306 -v D:/mysql/log:/var/log/mysql -v D:/mysql/conf:/etc/mysql/conf.d -v D:/mysql/data:/var/lib/mysql --privileged=true --restart=on-failure:3 -e MYSQL_ROOT_PASSWORD=liuyalong mysql:latest
注意事项
- 如果报错
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
,可能是配置文件位置不对- 搜索文件
find / -name mysqld.sock
发现这个文件被存放在/run/mysqld/mysqld.sock 这个路径下 - 然而配置文件
/etc/mysql/my.cnf
里写的路径不对,多了/var
,因为/etc/mysql/my.cnf文件最后加载了conf.d/目录下的文件,所以我们可以在conf.d目录下创建my.cnf文件,替换相关变量 - 在/etc/mysql/conf.d路径下创建的my.cnf配置文件可能会因为不安全(所有人都能修改),会被mysql忽略,需要更改我们自己创建的my.cnf的权限
chmod 644 /etc/mysql/conf.d/my.cnf
- 搜索文件
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
# Custom config should go here
!includedir /etc/mysql/conf.d/
安装RabbitMQ
- 拉取镜像
docker pull rabbitmq:management
management是带管理界面的 - 运行容器
docker run -itd --name rabbitmq -p 5672:5672 -p 15672:15672 --restart=always -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:managemen
- 端口15672是管理界面端口
安装MongoDB
- 拉取镜像:
docker pull mongo
- 运行容器 :
docker run -itd --name mongo -p 27017:27017 --restart=always mongo --auth
- 进入容器:
winpty docker exec -it mongo mongo admin
如果不加winpty会报错 - 创建超级管理员用户root:
db.createUser({ user:'root',pwd:'liuyalong',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
- 验证密码:
db.auth("root","liuyalong")
- 创建管理员用户 :
db.createUser({user:'liuyalong',pwd:'liuyalong', roles:[{role:'readWriteAnyDatabase', db:'admin'}]});
你要是觉得写的还不错,就点个关注,可以评论区留下足迹,以后方便查看.
你要是觉得写的很辣鸡,评论区欢迎来对线!
欢迎转载!