网站首页 > 技术文章 正文
本机Docker部署是为了全面看到部署日志,快速验证代码。
环境搭建
安装DockerInstall on Mac | Docker Documentation
安装好后点开即本机运行Docker。
修改配置:
打开Docker后,设置 -> Docker Engine 可以看到当前的配置。
1.buildkit 由true改成false,是因为我们的仓库地址是http的,而该客户端是https。设置成false后,来解决如下的错误。
"features": {
"buildkit": false
},
错误:
2.增加Docker仓库地址配置
"insecure-registries": [
"harbor.***.io"
]
部署运行
整体思路是:
Java服务打包,Docker构建服务镜像,上传到仓库,根据镜像起服务实例即完成服务的Docker部署和启动。
打开命令行终端
1.Java服务打包 (setting文件根据机器路径设置)
mvn clean package -Pdev -Dmaven.test.skip=true -U -f pom.xml -s /Users/***/.m2/settings.xml
2.Docker构建服务镜像
docker build --build-arg BUILD_ENV=*** -f Dockerfile -t harbor.***.io/***/***-service:2023011533 .
其中 BUILD_ENV=*** 是Java启动时,指定的环境参数,当前设置是A环境启动,即读取config中的***的配置文件。
-t后设置构建的镜像名称与标签 ***-service:2023011533
最后面还有个 . 是指定构建的Java代码路径。因为我执行命令时在代码路径所以直接 . 当前目录即可。
3.将镜像推送到仓库
docker push harbor.***.io/***/***-service:2023011522
此步骤中如果报如下错误
是需要登录
docker login harbor.***.io
4.运行该镜像生成的实例
docker run -ti harbor.***.io/***/***-service:2023011522
-ti 设置以交互模式运行容器,重新分配一个输入终端。
以上完成了Java服务的Docker运行。
接下来进入Java服务实例的话,另打开一个命令行tab。
5.查看当前运行的所有实例
docker ps -a
可以看到服务的实例id
6.进入实例内部
docker exec -ti 1e4a9367b815 sh
以上。
猜你喜欢
- 2024-10-01 Windows 系统下安装Java 22(统信系统下安装windows)
- 2024-10-01 Charles for Mac(HTTP协议抓包工具)v4.6.2b4注册激活版
- 2024-10-01 Mac安装Navicat(Mac安装anaconda)
- 2024-10-01 Mac中如何快速安装Jenkins(mac 安装jenkins)
- 2024-10-01 MacBook Java开发环境搭建记录(macbookair java开发)
- 2024-10-01 Mac 安装JDK 8、JDK 11、JDK 17 等多版本并存
- 2024-10-01 Mac Arm64 版本 java 11 SDK 提升SpringBoot 项目编译速度10秒 以上
- 2024-10-01 Mac通过Homebrew安装Python3(如何在mac上安装python 3.7版本)
- 2024-10-01 Mac安装多个版本JDK并实现灵活切换
- 2024-10-01 MacOS 系统中如何安装多个版本JDK并进行自由切换
- 04-24架构篇-一分钟掌握性能优化小技巧
- 04-24Nginx从概念到实战:原理、配置与踩坑全解析
- 04-24前端面试题-Vue 项目中,你做过哪些性能优化?
- 04-24从零开始学习C语言丨参数的传递方式
- 04-24C语言 | 成绩的等级判别
- 04-24C语言随机数生成
- 04-24C语言-平方倒数和
- 04-24C语言100题集合019-实现输入一个星期中对应的第几天
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)