1.开始配置docker远程访问开启。

首先编辑docker的宿主机文件/lib/systemd/system/docker.service

vim /lib/systemd/system/docker.service

修改以ExecStart开头的行:(因为我的系统是centos 7的,所以修改为下面得)

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

如果是centos7以下的话,就把ExecStart修改为:

ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375

修改后保存文件,然后通知docker服务做出的修改

systemctl daemon-reload

重启docker服务

service docker restart

1接下来测试一下看是否能连接到docker api。上面的2375就是对应端口

curl http://localhost:2375/version

如果看到控制台有数据返回,这里其实就已经成功了一大半了。

注意: 以上是直接开放了docker的远程访问,外网服务器必须要配置密钥来开放docker远程访问,不然服务器百分百被黑客挖矿

通过IDEA和CA证书加密远程链接到服务器上的Docker

如果发现还是远程连不上,可以设置一些腾讯云阿里云的安全策略和防火墙

2. IDEA自动化部署Docker镜像

  1. 老版idea需要安装,直接在插件市场搜索docker安装重启,最新版idea自带docker插件,不需要安装
  2. docker容器安装远程桌面 docker 远程_docker

  3. 连接到远程docker服务
    从File->Settings->Build,Execution,Deployment->Docker打开配置界面。
  4. docker容器安装远程桌面 docker 远程_java_02

  5. spring boot服务Docker部署,新建一个Spring boot工程,编写测试接口
  6. docker容器安装远程桌面 docker 远程_docker容器安装远程桌面_03

  7. 修改pom文件,添加properties,添加plugin
  8. docker容器安装远程桌面 docker 远程_docker_04

  9. 配置Dockerfile文件:在工程根目录下新建Dockerfile文件。

    内容,如下:
FROM java
RUN mkdir /ideadocker
COPY ideadockerdemo.jar /ideadocker/
WORKDIR /ideadocker
ENV MYSQL_PASSWORD=root123456 DWPC_REDIS_HOST=172.17.0.1:6381 STATIC_PATH=/static_files/
EXPOSE 8080
CMD ["java","-jar","ideadockerdemo.jar"]
  1. 创建Docker镜像
    idea运行maven命令,把项目打成jar包
    从Run->Edit Configrations进入配置界面。

点击Docker,再点击+号,添加一个docker命令,输入Name,选择Server,选择Dockerfile文件,context folder选择jar所在的targe目录,输入镜像tag,完成配置。

docker容器安装远程桌面 docker 远程_服务器_05

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yF1onJtr-1622222540789)(https://gitee.com/ercai/typora_chart_bed/raw/master/img/20200516160500.jpg])]

完成后,执行这个命令:

执行成功后,可以远程docker上看到这个镜像:

执行docker ps可以看到,镜像已经生产容器开始运行:


3. 生成的镜像push到远程私有docker仓库中

  1. 选择镜像,右键Push Image
  2. docker容器安装远程桌面 docker 远程_java_06

  3. push image界面Register点击new,填写远程docker仓库信息,填入name(随便起个名字),填入address,远程docker仓库的ip:端口,其他的不用填,点击测试连接,提示连接成功即可
  4. 填写Repository,远程docker仓库的ip:端口/镜像名
  5. 填写Tag,如v1
  6. 点击ok,即可将当前服务器中的镜像push到docker远程私有仓库
  7. 也可以不使用idea docker插件,直接idea ssh连接服务器(连接方法如下),用命令push镜像
docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
docker push 127.0.0.1:5000/ubuntu:latest
  1. 登陆docker远程私有仓库服务器查看是否push成功
curl 127.0.0.1:5000/v2/_catalog

4. 通过idea远程连接服务器

  1. 从Tools->Deployment->Configuration进入配置界面。
  2. 点击+号,选择SFTP,输入server name,进入配置界面
    5000/v2/_catalog

4. 通过idea远程连接服务器

  1. 从Tools->Deployment->Configuration进入配置界面。
  2. 点击+号,选择SFTP,输入server name,进入配置界面
  3. 配置ip,用户名,密码(或者密钥),即可连接