开启远程访问: vim /lib/systemd/system/docker.service
修改ExexStart=/ExecStart=/usr/bin/dockerd 这一行, 在ExecStart行后面追加以下内容 -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock systemctl daemon-reload 重新载入服务信息 systemctl restart docker.service 重启docker服务
查看端口是否开启 netstat -nlpt
IDEA配置插件:
远端创建容器
IDAE docker一键部署
docker-maven-plugin 能帮助自动生成镜像并推送到仓库
<plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <dockerHost>http://xxxxxx:2375</dockerHost> <!-- 镜像名称--> <imageName>${project.artifactId}</imageName> <!-- 基础镜像jdk1.8--> <baseImage>java</baseImage> <!-- 指定Dockerfile路径 根据实际位置指定--> <!-- <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>--> <!--制作人信息--> <maintainer>docker_maven docker_maven@email.com</maintainer> <!-- 切换到/ROOT目录--> <workdir>/ROOT</workdir> <!-- 制定远程docker api地址--> <dockerHost>http://115.29.140.141:2375</dockerHost> <cmd>["java", "-version"]</cmd> <entryPoint>["java", "-jar", "${project.build.finalName}.jar"]</entryPoint> <!--制定标签--> <imageTags> <imageTag>latest</imageTag> </imageTags> <!-- 这里是复制 jar 包到 docker 容器指定目录配置 --> <resources> <resource> <targetPath>/ROOT</targetPath> <!-- 用于复制需要复制的根目录,表示target目录--> <directory>${project.build.directory}</directory> <!-- 用于复制需要复制的文件 是指打包后的jar文件--> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin>
实际项目不建议直接推到服务器,除非你自己在内网玩,不然谁都可以在你远程瞎搞,风险极大
如果临时自己使用,别忘记把2375关闭,如下,步骤和打开步骤一样