docker部署redis,mongodb,mysql 常用環境

docker 安裝mysql

# docker pull mysql:5.7
# docker run --name mysql5.7 -p 3306:3306 -v /data/mysql/data:/var/lib/mysql  -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

MySQL(5.7.19)的默認配置文件是 /etc/mysql/my.cnf 文件。

如果想要自定義配置,建議向 /etc/mysql/conf.d 目錄中創建 .cnf 文件。

新建的文件可以任意起名,只要保證後綴名是 cnf 即可。

新建的文件中的配置項可以覆蓋 /etc/mysql/my.cnf 中的配置項

進入mysql

# docker exec -it d29dd3b86303  /bin/bash
root@96a49c6e7235:/# mysql -u root -p 

 

docker安裝MongoDB

docker pull mongo
docker run --name my_mgdb -p 10311:27017 -v /data/mongodb/my_mgdb/data:/data/db -v /data/mongodb/my_ngdb/backup:/data/backup -v /data/mongodb/mh_mgdb/logs:/var/log/mongodb -d mongo:latest

進入MongoDB

# docker exec -it cbf07fc08d7f  /bin/bash
# root@cbf07fc08d7f:/# mongo

在mongo的shell裏添加用戶名密碼等

# use admin
 # db.createUser(
  {
    user: "myadmin",
    pwd: "123456",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)
# db.auth("myadmin","123456");
# use my_mgdb
# db.createUser(
  {
    user: "myadmin",
    pwd: "123456",
    roles: [ { role: "userAdmin", db: "my_mgdb" }, { role: "readWrite", db: "my_mgdb" },{ role: "dbOwner", db: "my_mgdb" }]
  }
)
# db.auth("myadmin","123456");

 

 docker安裝redis

 

docker pull redis:4.0
docker run -d --privileged=true -p 6379:6379 -v /data/redis/redis.conf:/etc/redis/redis.conf -v  /data/redis:/data --name myredis redis:4.0 redis-server /etc/redis/redis.conf --appendonly yes

docker 最新是5.0
先去下載一個 包下來得到配置文件(http://download.redis.io/releases/redis-4.0.3.tar.gz

--privileged=true:容器內的root擁有真正root權限,否則容器內root只是外部普通用戶權限
-v /data/redis/redis.conf:/etc/redis/redis.conf 映射配置文件
-v /data/redis:/data:映射數據目錄
redis-server /etc/redis/redis.conf 指定配置文件啓動redis-server進程
--appendonly yes:開啓數據持久化

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章