ubuntu20 ,windows 安装 docker 使用 mongo mysql

安装docker 华为镜像元

镜像安装地址

https://mirrors.huaweicloud.com/
切换docker 镜像

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    
    
    "registry-mirrors": [
        "https://1nj0zren.mirror.aliyuncs.com",
        "https://docker.mirrors.ustc.edu.cn",
        "http://f1361db2.m.daocloud.io",
        "https://registry.docker-cn.com"
    ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

mongo 部署使用

持久化的安装mongo以及可视化

mongdb 服务器 网络 mynet ip 172.30.10.10
web控制 网络 mynet ip 172.30.10.11

docker network create -d bridge --subnet 172.30.10.0/24 mynet

//可用的 本地 ip 段
172.16.0.1~172.31.255.254
172.30.10.0/24


## //创建保存数据的数据卷

docker volume create --name=mongodata

## //创建保存客户端连接信息的数据卷

docker volume create --name=mongoclientdata

//启动mongo服务
docker run -it    --net=mynet  --ip=172.30.10.10  --privileged=true    -v  mongodata:/data/db  -p 27017:27017 --name mongodb1 -d  --restart=always   mongo:4.2.2  

//只需要在持久化数据时 创建一次即可
docker exec -it mongodb1  mongo admin

//创建 超级用户
db.createUser({
  user: "root",
  pwd:"123456",  
  roles: [
    { role: "userAdminAnyDatabase", db: "admin" }
]});

//启动  数据库可视化 服务
docker run -d  --net=mynet  --ip=172.30.10.11  -p 36000:3000   -e MONGO_URL="mongodb://172.30.10.10:27017"  -v   mongoclientdata:/data/db  --name=mongoclient1  --restart=always  mongoclient/mongoclient

//连接mongo的url
mongodb://root:[email protected]:27017

//查看所有的用户
db.system.users.find().pretty()

重启持久化数据库以及web访问

// 启动容器

docker start  mongodb1 mongoclient1

//设置自动重启

run --restart=always

// 对已经在运行的容器设置自动重启

docker update --restart=always   mongodb1 mongoclient1 

设置 非重复 索引

db.collection.createIndex({
    
    "tvid":1},{
    
    unique:true})

db.kiki.createIndex({
    
    tvid:1},{
    
    unique:true})

db.members.createIndex( {
    
     "tvid": 1 }, {
    
     unique: true } )

mysql 部署使用

服务信息
mysql服务器 port 33060
web控制 网络 port 38000

部署命令

// 创建持久化数据卷
docker volume create --name=mysqldata

-v  mysqldata:/var/lib/mysql

//docker run --name own_mysql -v  mysqldata:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306  -d mysql:8.0.1
// 部署 mysql5.6
docker run --name own_mysql -v  mysqldata:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d  --restart=always  mysql:5.6

// 运行 web 管理容器
docker run --name own_phpmyadmin -d --link own_mysql:db -p 38000:80   --restart=always  phpmyadmin/phpmyadmin

// 对已经在运行的容器设置自动重启
docker update --restart=always   own_mysql own_phpmyadmin 

本地mysql数据库 web地址

http://localhost:38000

数据库地址

http://localhost:3306

杂记

不持久化安装mongo
github
https://github.com/mongodb/mongo

sudo docker run -it -p 27017:27017 --name mongodb1 -d mongo:4.2.2

docker exec -it mongodb1 mongo admin
use main

设置 非重复
db.collection.createIndex({
    
    "tvid":1},{
    
    unique:true})

db.kiki.createIndex({
    
    tvid:1},{
    
    unique:true})

db.members.createIndex( {
    
     "tvid": 1 }, {
    
     unique: true } )

初始化管理员用户并且指定账号密码
db.createUser({
    
    
  user: "root",
  pwd:"123456",  
  roles: [
    {
    
     role: "userAdminAnyDatabase", db: "admin" }
]});

exit 退出

登录
docker exec -it mongodb1  mongo admin
db.auth(“root”,“123456”) 使用root身份登录

创建一个用户 和数据库
exit 退出登录

docker exec -it 51a5b5e05fe4(换成mongo的容器id) mongo admin 启动
db.auth(“helele”,“123456”) employ用户登录
use employ 切换数据库



不持久安装mongodb client
可以使用的部署命令

请先部署了 本地mongodb到  localhost:270017

docker run -d --net="host" -e MONGO_URL="mongodb://localhost:27017" -p 36000:3000   --name=mongoclient1 mongoclient/mongoclient

/opt/meteor/dist/bundle/programs/server/dump 容器中导出数据的目录


访问地址
http://127.0.0.1:36000/

链接账户
mongodb://root:123456@localhost:27017

Docker
docker pull mongoclient/mongoclient
To install latest stable release:
docker pull mongoclient/mongoclient:4.0.0
Then you can run it as a daemon:
docker run -d -p 3000:3000 mongoclient/mongoclient
To set an external mongodb which is required for meteor to work, you can set MONGO_URL environment variable. Otherwise nosqlclient will install mongodb to container and use it.
To persist your connections and settings simply bind /data/db directory to your local machine as below.
docker run -d -p 3000:3000 -v <your_path>:/data/db mongoclient/mongoclient

-e MONGO_URL="mongodb://127.0.0.1:27017"

docker run -d -p 3000:3000 -v /home/lmk/mongo/clientdata:/data/db  --name mongo1  mongoclient/mongoclient:4.0.0


docker run -d -p 3000:3000 --name mongoclient1 mongoclient/mongoclient

docker run -e MONGO_URL="mongodb://127.0.0.1:27017" mongoclient/mongoclient

docker run --net="host" -e MONGO_URL="mongodb://localhost:27017" -p 3000:3000  --name=mongoclient1 mongoclient/mongoclient

猜你喜欢

转载自blog.csdn.net/qq_43373608/article/details/107217521
今日推荐