用Docker部署Maven框架下的Web项目的镜像
目录
2.下载Windows版本的docker desktop到D盘
docker安装
1.确认虚拟化开启

如果显示“已禁用”,需要重启电脑进入 BIOS 开启虚拟化。
2.下载Windows版本的docker desktop到D盘
Docker Desktop: The #1 Containerization Tool for Developers | Docker
下载得到exe文件后以管理员身份打开PowerShell
cd D:\FILES\Docker#进入exe所在的文件夹
输入下载命令,指定想下载到的目录:
start /w "" "Docker Desktop Installer.exe" install -accept-license --installation-dir="D:\FILES\Docker" --wsl-default-data-root="D:\FILES\Docker\data" --windows-containers-default-data-root="D:\FILES\Docker"
-
--installation-dir:Docker 主程序的安装目录 -
--wsl-default-data-root:WSL 容器的数据存储目录 -
--windows-containers-default-data-root:Windows 容器的数据存储目录


3.安装wsl
【1】双击下载好的docker desktop
然后按任意键安装
【2】如果双击没反应,打开win+r,输入
wsl --install
最后得到:

【可选】把WSL放到其他盘:
wsl --shutdown
4.打开docker desktop
注册-登录
5.验证安装成果
cmd+r:输入
docker --version
docker run hello-world
【报错1】:
【解决方案:】
-
打开 Docker Desktop,点击顶部菜单栏的 Settings(齿轮图标)。
-
在左侧菜单中找到 Docker Engine,把下面的覆盖进文本框
{ "registry-mirrors": [ "https://do.nark.eu.org", "https://dc.j8.work", "https://docker.m.daocloud.io", "https://dockerproxy.com", "https://docker.mirrors.ustc.edu.cn", "https://docker.nju.edu.cn" ], "builder": { "gc": { "defaultKeepStorage": "20GB", "enabled": true } }, "experimental": false }然后点击底部的 Apply & Restart
-
显示

-
【成功】

docker使用
为什么要用docker?
开发与运维最常遇到的矛盾 ——“我本地能跑,上线就报错”,根源是开发、测试、生产环境的配置差异(如 JDK 版本、Redis 端口、依赖库版本不同)。Docker 通过 “镜像打包环境” 解决:
-
开发时将 “应用程序 + 依赖环境(JDK/Redis/MySQL 等)” 一起打包成 “镜像”,镜像包含了运行所需的所有配置和依赖,确保环境完全一致;
-
运维无需在服务器上手动配置环境,直接下载开发提供的镜像,启动容器即可运行,彻底消除 “环境不兼容” 问题。
怎么用docker
以我自己的课程大作业为例:yzy/Wuyi
1.构建镜像:
在一个这样结构的项目里:
打开项目目录,进入powershell,然后输入构建镜像的命令:
docker buildx build -t docker-deploy-app:1.0.0 .
-
docker-deploy-app:镜像的名称 -
1.0.0:镜像的标签
2.构建并启动容器
docker-compose up -d
【报错1】:
【解决方法】
这个错误是由于 Docker 无法拉取 mcr.microsoft.com/mssql/server:2019-latest 镜像导致的,通常与网络连接或镜像源访问有关,把下面这个镜像源放进下图即可:
"https://mcr.azk8s.cn"
【报错2】:
【解决方法】
也就是说要把yml里的context:..改成context:.就行
然后运行:
docker-compose build --no-cache
build完之后,重新构建容器:
【报错3】:
【解决方法】
查看container的状态,如下:
成功创建了,但是没启动成功,可以restart一下
docker-compose restart app
3.创建数据库
docker-compose exec sqlserver bash -c "export SQLCMDPASSWORD='zyLin@0614'; /opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -C -Q 'CREATE DATABASE Wuyi'"
docker cp D:\桌面\作业\软件工程实践\wuyi_V1.0.0\docker-deploy\create_tables.sql soft-practice-sqlserver:/tmp/create_tables.sql
docker-compose exec sqlserver bash -c "export SQLCMDPASSWORD='zyLin@0614'; /opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -C -i /tmp/create_tables.sql"
更多推荐





所有评论(0)