Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程

Docker远程服务

开发环境大多使用的的是windows系统,服务器运行环境一般采用Linux系统,这时候生成镜像时用到远程连接Docker服务。

一、开启Docker远程

1、如果只是临时使用远程docker,使用以下命令:
sudo dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375
2、如果使用docker启动时开启远程docker,则修改 /lib/systemd/system/docker.service 的ExecStart(不同版本的docker可能不同,处理思路类似)
vim /lib/systemd/system/docker.service

原docker.service配置中的ExecStart配置项

ExecStart=/usr/bin/dockerd -H unix://

修改为

ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375

重启Docker配置生效

systemctl daemon-reload
systemctl restart docker

二、VSCode连接Docker远程服务

1、Docker插件

点击插件扩展按钮,下载Docker插件

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程_第1张图片

重新打开VSCode,点击Docker插件按钮

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程_第2张图片

2、Docker插件配置Docker远程

打开VSCode设置,在Docker Host中添加远程Docker地址和端口,注意是http协议头http://

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程_第3张图片

点击Docker插件按钮,此时已连接Docker

三、Idea连接Docker远程服务

1、Docker插件

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程_第4张图片

2、Docker插件配置,TCP Socket添加远程Docker,tcp://开头

Docker开启远程进程服务以及VSCode、Idea等IDE连接使用远程_第5张图片

四、项目中Docker配置

maven项目中添加docker-maven-plugin插件

			
				com.spotify
				docker-maven-plugin
				1.0.0
				
				http://192.168.2.23:2375
					my-sky/${project.artifactId}
					src/main/docker
					
						
							/
							${project.build.directory}
							${project.build.finalName}.jar
						
					
				
			
  • dockerDirectory标签为Dockerfile存放位置
  • dockerHost标签为远程Docker地址
  • imageName标签为生成镜像名
  • targetPath标签为本地镜像存放位置

Docker上传镜像到远程Docker服务器时,特别注意本地镜像存放位置targetPath

Dockerfile示例

FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD springboot.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

五、项目打包生成镜像

命令行进入pom.xml所在文件夹,并执行打包生成镜像,上传镜像至Docker远程服务器

mvn clean package docker:build

你可能感兴趣的:(Docker)