在docker中安装常用软件
一、Mysql
下载mysql
docker pull mysql:5.7.15
启动mysql
docker run -p 3306:3306 --name MySQLDocker -v $PWD/conf/my.cnf:/etc/mysql/conf.d/my.cnf -v $PWD/logs:/var/log/mysql -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.15
二、Redis
下载Redis
docker pull redis:latest
运行redis--无密码
docker run -itd --name redis-test -p 6379:6379 redis
- -p 6379:6379:映射容器服务的 6379 端口到宿主机的 6379 端口。外部可以直接通过宿主机ip:6379 访问到 Redis 的服务。
运行redis--有密码
docker run --name redis-test-pwd -p 6379:6379 -d --restart=always redis:latest redis-server --appendonly yes --requirepass "123456"
通过 redis-cli 连接测试使用 redis 服务。
docker exec -it redis-test /bin/bash
三、Mongodb
查找mongodb
docker search mongo
下载Mongodb
docker pull mongo:latest
运行容器
docker run -itd --name mongo -p 27017:27017 mongo --auth
- -p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
- --auth:需要密码才能访问容器服务。
接着使用以下命令添加用户和设置密码,并且尝试连接。
$ docker exec -it mongo mongo admin # 创建一个名为 admin,密码为 123456 的用户。 > db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]}); # 尝试使用上面创建的用户信息进行连接。 > db.auth('admin', '123456')
四、CentOS
拉取镜像
docker pull centos:centos7
运行容器
docker run -itd --name centos-test centos:centos7
通过 exec 命令进入 CentOS 容器
docker exec -it centos-test /bin/bash