使用docker创建和运行跨平台的容器化mssql数据库

目录
  • 1.开启虚拟化服务
  • 2.安装Docker desktop
  • 3.部署本地mssql数据库
  • 3.另外也能在Docker Desktop-Container查看刚刚创建的容器
  • 4.使用VS验证

我们一般启用sql server数据库要么选择安装SQL Server实例和管理工具(SSMS),要么用vs自带的数据库。如今net跨平台成为趋势,今天给大家介绍另一种我最近在玩的方式,即使用docker创建并启用sql数据库。

本章介绍了在window10专业版下如何利用docker创建mssql数据库,包括以下主题:

  • 安装并验证docker
  • 利用docker创建mssql实例
  • 使用vs2022连接sql

首先我们看下sql自带的数据库管理工具,打开vs2022-视图-SQL Server对象资源管理器,在SQL Server实例中第一个选项就是vs自带的数据库。

在接下来的内容中我们来试着添加一个基于docker的数据库容器镜像。

1.开启虚拟化服务

在安装docker之前,需要确保虚拟化服务是开启状态。右键win图标,选择应用和功能(或者打开控制面板),点击程序和功能-启用或关闭windows功能,勾选Hyper-V,点击确定开启功能。(如果是win10家庭版的话,是看不到Hyper-V选项的,比较麻烦,需要修改注册表,但网上有教程,可以搜索并按照教程做)

2.安装Docker desktop

在docker官网根据需要选择下载安装程序,我们选择windows版本。安装完成以后docker会自动启动,任务栏会有一个鲸鱼图标,表明docker正在运行。

我们可以通过命令行验证一下docker的安装情况,输入docker --version可以看到版本信息

也可以邮件鲸鱼图标,点击About Docker Desktop查看

3.部署本地mssql数据库

第一步:拉取SQL Server 2019 Linux 容器镜像,打开命令行,输入docker pullmcr.microsoft.com/mssql/server:2019-latest

输入docker images查看镜像

第二步:1.运行容器镜像,命令行输入docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=MyStrongPwd!2#" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest

其中:ACCEPT_EULA=Y表示接受最终用户许可协议

SA_PASSWORD=MyStrongPwd!2#表示账户名sa,密码MyStrongPwd!2#

-p设置端口 1433:1433 前者表示对外提供的访问端口号,后者表示容器内部的端口号(如果这一步报错"docker: Error response from daemon: Ports are not available...",这说明端口被占用了,一般是被sqlserver服务占用了,可以打开sqlserver配置管理器将Sql server服务停止即可)

-d设置镜像名,设置为拉取的镜像mcr.microsoft.com/mssql/server:2019-latest

还可以通过 --name xxxx为容器指定一个自定义名称,通过--hostnam xxxx设置容器主机名,如果不设置docker会随机给容器命名。

2.查看运行状况,命令行输入docker ps,可以看到正在运行

3.另外也能在Docker Desktop-Container查看刚刚创建的容器

4.使用VS验证

打开vs的SQL Server对象资源管理器,点击左上角添加 SQL Server按钮,输入信息,点击连接

完成后在SQL Server实例列表里可以看到新增了一个localhost服务器,说明vs已经连接上docker创建的sql了

因为还没有创建数据库,所以只能看到系统数据库,下一篇我们将使用EFCore创建并初始化数据库。

到此这篇关于使用docker创建和运行跨平台的容器化的mssql数据库的文章就介绍到这了,更多相关使用docker创建和运行跨平台的容器化的mssql数据库内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 在Docker容器中部署MSSQL

    部署MSSQL需要2G内存 1.下载镜像 docker pull microsoft/mssql-server-linux 使用该命令就可以把数据库的docker镜像下载下来. 2.创建并运行容器 docker run --name MSSQL_1433 -m 512m -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' -p 1433:1433 -d microsoft/mssql-server-linux 这个密码需要复杂密码,

  • Docker大型项目容器化改造

    虚拟化和容器化是项目云化不可避免的两个问题.虚拟化由于是纯平台操作,一个运行于linux操作系统的项目几乎不需要做任何改造就可以支持虚拟化.而项目如果要支持容器化则需要做许多细致的改造工作.容器化相对于虚拟化的优势也相当明显,运行于裸机性能高,秒级启停容器,更不用说开发.测试.布署一致的环境(DevOps理念),以及上篇提到的微服务的能力.大家还可以找到各种文章来介绍容器化(Docker)的知识,这里我们就不一一赘述.下面我们会根据项目的实际情况,介绍下容器化改造会面临的问题和解决方案. 一个几

  • Django Docker容器化部署之Django-Docker本地部署

    本章将在本地搭建一个容器化的 Django 项目,感受 Docker 的运作方式. 前期准备 开发环境 虽然有基于 Windows 的 Docker 版本,但各方面兼容做得都不太好(安装也麻烦些),因此建议读者在学习前,自行安装好 Linux 或 Mac 系统.当然你愿意折腾的话,在 Windows 上搞也行. 别担心,以后开发 Django 项目仍然可以在 Windows 下进行,仅仅是开发时不使用 Docker 而已. 软件安装 Docker:学习 Docker 当然要安装 Docker 软

  • 详解利用ELK搭建Docker容器化应用日志中心

    概述 应用一旦容器化以后,需要考虑的就是如何采集位于Docker容器中的应用程序的打印日志供运维分析.典型的比如SpringBoot应用的日志 收集.本文即将阐述如何利用ELK日志中心来收集容器化应用程序所产生的日志,并且可以用可视化的方式对日志进行查询与分析,其架构如下图所示: 架构图 镜像准备 镜像准备 ElasticSearch镜像 Logstash镜像 Kibana镜像 Nginx镜像(作为容器化应用来生产日志) 开启Linux系统Rsyslog服务 修改Rsyslog服务配置文件: v

  • 使用docker创建和运行跨平台的容器化mssql数据库

    目录 1.开启虚拟化服务 2.安装Docker desktop 3.部署本地mssql数据库 3.另外也能在Docker Desktop-Container查看刚刚创建的容器 4.使用VS验证 我们一般启用sql server数据库要么选择安装SQL Server实例和管理工具(SSMS),要么用vs自带的数据库.如今net跨平台成为趋势,今天给大家介绍另一种我最近在玩的方式,即使用docker创建并启用sql数据库. 本章介绍了在window10专业版下如何利用docker创建mssql数据库

  • 详解Docker创建支持ssh服务的容器和镜像

    1. 这里使用的centos作为容器,所以首先下载centos的images # sudo docker pull centos 2. 下载后运行一个centos的容器,这里使用centos6作为我测试的容器 # sudo docker run --name=centos-ssh -i -t centos:centos6 /bin/bash  3. 安装openssh-server服务软件包 # yum install openssh-server 4. 编辑sshd的配置文件/etc/ssh/

  • Docker创建Mysql容器的简单步骤

    前言 前面我们已经安装好了Docker,也简单了解了Docker.下面就来给大家介绍下Docker创建Mysql容器的简单步骤,话不多说了,来一起看看详细的介绍吧 步骤如下 1.启动docker服务 [root@docker ~]# systemctl start docker 2.查看docker里面的镜像 [root@docker ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos/mysql-57-centos7 la

  • 教你使用docker查看运行中的容器

    下面先给大家介绍下docker 如何查看运行中的容器,内容如下所示: 列出所有在运行的容器信息: docker ps [root@enlich01 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ce2c487c79c6 mysql "docker-entrypoint..." 27 hours ago Up 27 hours 0.0.0.0:3306->3306/tcp, 33060/tcp

  • vue前端项目打包成Docker镜像并运行的实现

    目录 vue前端项目打包成Docker镜像并运行 前端将vue打包成镜像发布 一.总体预览 二.打包配置 三.问题思考 vue前端项目打包成Docker镜像并运行 首先说明咱们的前端项目是基于Vue的,反向代理使用的是nginx 1.打包vue前端项目生成dist文件夹上传至服务器 新建一个文件夹,叫vueDockerTest,下面的文件都需要. cert是你存放ssl证书的文件夹,nginx.conf 是nginx的配置文件,dist是你打包的前端静态文件 2.修改Dockerfile文件 #

  • Docker创建容器时目录权限踩坑

    昨天写项目时需要用到Mysql的衍生版本percona, 就想用Doker来安装.结果踩了一晚上坑, 今早终于解决. 现记录在此. 这个坑原因是我对linux的目录权限问题不敏感导致的. 我的系统是ubuntu16.04, 运行 docker pull percona 拉取镜像时一切正常. 拉取完后,输入 docker images查看所有镜像, 显示正常: 然后我创建容器,命令为(执行时不要有换行): docker create --name percona -v /data/mysql-da

  • 通过Docker创建CentOS容器的实现步骤

    目录 前言 创建桥接网络,方便容器间通信 通过CentOS 7镜像创建容器 连接容器 容器间互相访问 参考链接 前言 先安装Docker,使用文内的脚本可以快速创建CentOS 7.8虚拟系统集群,并通过SSH(Secure Shell)远程工具连接. 创建桥接网络,方便容器间通信 指令格式为docker network create <网络名称 >. docker network create test-network 列出Docker下所有网络可以看到test-network. docke

  • docker 创建容器时指定容器ip的实现示例

    Docker创建容器时默认采用bridge网络,自行分配ip,不允许自己指定. 在实际部署中,我们需要指定容器ip,不允许其自行分配ip,尤其是搭建集群时,固定ip是必须的. 我们可以创建自己的bridge网络 : mynet,创建容器的时候指定网络为mynet并指定ip即可. 查看网络模式 docker network ls 创建一个新的bridge网络 docker network create --driver bridge --subnet=172.18.12.0/16 --gatewa

  • Docker 给运行中的容器设置端口映射的方法

    一.概念 Docker 端口映射即映射容器内应用的服务端口到本机宿主机器. 二.实现 当容器中运行一些网络应用,要让外部访问这些应用时,可以通过 -P 或 -p 参数两种方式来指定端口映射. 1. 随机映射 使用 -P 参数时,Docker 会随机映射一个端口到内部容器开放的网络端口,如下开启一个 nginx 服务: $ docker run -d -P nginx e93349d539119dc48dc841e117f6388d6afa6a6065b75a5b4aedaf5fb2a051fc

  • 详解Docker创建Mysql容器并通过命令行连接到容器

    拉取网易蜂巢的mysql-server:5.6 docker pull hub.c.163.com/nce2/mysql:5.6 创建mysql5.6容器 1master+3个slave docker run --name mysql-master -d -P hub.c.163.com/nce2/mysql:5.6 docker run --name mysql-slave1 -d -P hub.c.163.com/nce2/mysql:5.6 docker run --name mysql-

随机推荐