1.为API集成Docker环境。(VS自带,傻瓜式操作)
1.1 点击项目,右键,添加,选择Docker支持
1.2 找到项目根目录中的Dockerfile文件,这是VS刚刚帮我们自动生成的。进入和做如图标红地方修改。
把文件名用.代替(因为当前文件在根目录了)。
2.安装Docker,执行相应的命令。
2.1 进入docker官网,下载安装包。解压后下一步,记得开启虚拟化服务。具体百度一大把。
2.2 安装好后 记得配置国内下载镜像的地址,不然下载会很慢。 打开设置:
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com"
]
3.执行命令,进行容器化部署。
3.1 进入到项目根目录文件夹,然后cmd 回车 如图:
3.2 执行容器初始化命令 docker build -t fakexiechengapi .
其中fakexiechengapi
为容器名称。自己随便起。然后回车,它会自动对相应的镜像拉取。直到看到Finished
如图:
3.3 执行docker run -d --name fakexiechengapi -p 8080:80 fakexiechengapi
运行刚刚创建好的容器。fakexiechengapi
是刚刚的容器名称。
3.3.1 拉取sql server 镜像
命令:docker pull mcr.microsoft.com/mssql/server:2017-latest
运行镜像:docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=1qazXSW@" -p 1433:1433 --name sqlserver2017 -d mcr.microsoft.com/mssql/server:2017-latest
参数解释:
-e "ACCEPT_EULA=Y":默认选择同意协议许可证
-e "SA_PASSWORD=qwe20211114.":设置连接密码为qwe20211114.
-p 1433:1433: 宿主机端口映射到容器端口(前者为宿主机)
--name sqlserver2017:容器别名
-d: 后台运行
mcr.microsoft.com/mssql/server:2017-latest:镜像名称:标签
进入容器:docker exec -it sqlserver2017 /bin/bash
连接数据库: /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "1qazXSW@"
参考
此时可以直接通过sql管理工具去连接数据库镜像了。连接地址就是本地ip
,账号默认sa
,密码就是刚刚上面设置的密码。如图:
查看docker安装了哪些镜像:docker images
注意数据库必坑点:
docker拉去数据库镜像后,会自动给该容器分配一个虚拟IP。我们通过以下命令去查看:docker inspect bridge
找打名称为sqlserve的容器。我们可以看到虚拟IP为172.17.0.2
注意,我们程序中的连接字符串的IP 必须要用这个虚拟IP。
如下,为我的连接字符串:
"ConnectionString": "Data Source=172.17.0.2;Initial Catalog=FakexiechengDb;User Id=sa;Password=密码"
3.4 此时容器就在运行了。我们可以在docker客户端进行查看。也可以通过命令查看 docker ps
到此我们的容器化部署完成。
Docker其他命令大全:
docker build -t fakexiechengapi .
容器初始化
docker run -d --name fakexiechengapi -p 8080:80 fakexiechengapi
运行容器
docker ps
查看运行的容器
docker logs fakexiechengapi
查看容器日志
docker inspect bridge
查看虚拟IP
docker images
查看安装了哪些镜像
docker rm 149f8cbe93a5
删除容器,其中id
号可以通过docker ps
命令查看
docker stop 149f8cbe93a5
暂停容器
其他要用的百度吧。