前言
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
步骤
1、MongoDB
拉取最新镜像:
docker pull mongo:latest
新建网络:
docker network create mongowork
运行mongodb:
docker run -d -p 27017:27017 --network mongowork --name mongodb -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=123456 mongo
参数解释:
network: 网络名称
p: 端口号
name: 容器名称
d: 设置后台运行容器
MONGO_INITDB_ROOT_USERNAME : mongodb 的用户名
MONGO_INITDB_ROOT_PASSWORD: mongodb 的密码
NoSQLBooster for MongoDB测试连接:
net测试连接:
public class MongoContext
{
MongoClient _client;
public IMongoDatabase Database { get; }
IConfiguration _config;
public MongoContext(IConfiguration configuration)
{
_config = configuration;
//获取数据库连接配置
var connectionString = "mongodb://root:123456@localhost";// _config.GetSection("MongoDb:ConnectionString").Value;
var database = "manage_portal";//_config.GetSection("MongoDb:Database").Value;
_client = new MongoClient(connectionString);
Database = _client.GetDatabase(database);
}
}
2、Redis
拉取最新镜像:
docker pull redis:latest
运行Redis:
docker run -itd --name redis -p 6379:6379 redis
参数解释:
p: 端口号
name: 容器名称
RedisDesktopManager测试连接:
net测试连接:
public static void AddCSRedis(this IServiceCollection services)
{
var csredis = new CSRedisClient("127.0.0.1:6379");
RedisHelper.Initialization(csredis);
}
3、MySQL
拉取最新镜像:
docker pull mysql:latest
运行MySQL:
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.36
参数解释:
p: 端口号
name: 容器名称
MYSQL_ROOT_PASSWORD:密码
测试连接:
查看容器ID:
docker ps
进入容器:
docker exec -it 3193be11aa9b /bin/bash
登录
mysql -uroot -p
Navicat 15 for MySQL测试连接:
net测试连接:
public class MyContext
{
private string connectionString;
public IDbConnection connection { get; set; }
public MyContext()
{
string settings = "Data Source=112.126.59.234;Database=test;AllowLoadLocalInfile=true;User ID=root;Password=123456;allowPublicKeyRetrieval=true;pooling=true;CharSet=utf8;port=3306;sslmode=none;";
connectionString = settings;
connection = new MySqlConnection(connectionString);
}
}