栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

maven编译项目打包到docker镜像并启动

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

maven编译项目打包到docker镜像并启动

1、安装docker

通过yum安装,可以参考我的另一篇文章。
https://editor.csdn.net/md/?articleId=108400688

2、修改配置,开启docker远程访问

打开配置文件,在[server]标签下增肌如下节点

vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=
ExecStart=/usr/bin/dockerd -H unix://var/run/docker.sock -H tcp://0.0.0.0:2375

重新读取配置文件,并重新启动docker

systemctl daemon-reload
systemctl restart docker

由于要用到2375端口,需要打开防火墙端口。

3、pom配置

设置docker服务器地址


	http://192.168.129.1:2375
	dockertest



	
	
		com.spotify
			docker-maven-plugin
			0.4.13
			
				${docker.image.prefix}/${project.artifactId
					src/main/docker
					${docker.host}
					
						
							/
							${project.build.directory}
							${project.build.finalName}.jar
						
					
				
			
			
	

到pom文件所在目录,执行打包

mvn clean package docker:build

成功执行完成之后,到服务器上查看,镜像已经成功制作。


4、启动制作的镜像
 docker run -d -p 80:80 -v $PWD/logs:/logs --name gateway 镜像名称

由于该服务,集成了nacos客户端,报错如下:

在yml配置文件中增加如下配置:

6、解决容器中时间少8小时问题

大部分都是这样解决的:
docker run 中增加参数,映射系统时间参数 -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro
由于我的是centos7,出现如下错误:
docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting “/etc/timezone” to rootfs at “/etc/timezone”: mount /etc/timezone:/etc/timezone (via /proc/self/fd/6), flags: 0x5001: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
原因是centos7中/etc/timezone是一个文件夹,而不是一个文件

echo 'Asia/Shanghai' > /etc/timezone/timezone
docker run -v /etc/timezone/timezone:/etc/timezone ......

问题解决

7、配置docker自启动
# 开启 docker 自启动
systemctl enable docker.service
# 关闭 docker 自启动
systemctl disable docker.service

配置容器自启动

# 开启容器自启动
docker update --restart=always ef63b09322ab

# 关闭容器自启动
docker update --restart=no ef63b09322ab
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/914379.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号