IDEA的Docker插件实战(Dockerfile篇)

   日期:2024-12-27    作者:aqhc12 移动:http://ljhr2012.riyuangf.com/mobile/quote/57154.html

参考链接1 参考链接2

#修改Docker服务文件
vim /lib/systemd/system/docker.service
​
# 通常使用端口2375与守护进程进行非加密通信,使用端口2376与守护进程进行加密通信。
#修改ExecStart行,添加如下配置
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
​
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
​
# 注释最初配置
# ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
# 开启远程访问
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
​
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always

重新加载配置文件

systemctl daemon-reload
重启服务
systemctl restart docker.service

查看端口是否开启

netstat -antp | grep dockerd  #如果找不到netstat命令,使用yum install net-tools安装
​
[root@administrator ~]# netstat -antp | grep dockerd 
tcp6       0      0 :::2375                 :::*                    LISTEN      4514/dockerd  

直接curl看是否生效,测试通过localhost是否能使用Docker Engine API

curl http://127.0.0.1:2375/info
​
curl http://localhost:2375/version

访问:测试远程能否通过主机IP使用Docker Engine API

从File->Settings->Build,Execution,Deployment->Docker打开配置界面,配置docker,连接到远程docker服务

在pom.xml文件所在同级目录,创建名为Dockerfile的文件

# 基础镜像
FROM openjdk:8
​
#作者信息   可以不写!
MAINTAINER author_information
​
#申明一个环境变量   可以不写!
ENV HOME_PATH /home
​
#指定容器启动时,执行命令会在该目录下执行   可以不写!
WORKDIR $HOME_PATH
​
#应用构建成功后的jar复制到容器指定目录下   上面都不写的就把$HOME_PATH删除! food_environment_team必须和下面的Image tag生成的镜像名称一样  -0.0.1这个是版本号可以不一样 -SNAPSHOT.jar是固定写法
ADD target/food_environment_team-0.0.1-SNAPSHOT.jar $HOME_PATH/app.jar
​
#指定容器内部端口   可以不写,不写默认是项目中pom文件的端口
EXPOSE 8888
​
#容器启动时执行的命令
ENTRYPOINT ["java","-jar","app.jar"]
Name: 配置名称(随意)
​
Server: 选择Docker远程连接配置
​
Build
    
    Dockerfile:选择编写的Dockerfile文件
    
    Image tag:设置生成镜像的名称(可以用    镜像名称:0.0.1   这样版本号就是0.0.1)
    
Run:容器运行相关的额外配置
    
    Container name :设置容器名称
    
    
    Bind ports: 端口绑定   8095:8092:前面是宿主机端口,也就是虚拟机的端口,就是postman要访问这个端口(可以随便设置:后面是容器内端口,也就是项目中yml的port。可以在dockerfile另外指定)
    Bind mounts: 挂载
​
Before launch: 配置运行前进行的额外操作
​
    clean package  -DskipTests :重新编译构建:清理、打包、跳过测试

运行结果如下所示,项目构建成功后,在Docker上部署镜像成功,然后运行容器成功

登录远程Docker,先后执行docker image和docker ps命令查看镜像和容器情况如下,可见一切正常

docker save 镜像名字:版本号 > 要打包的名字.tar docker save -o 要打包名字.tar 镜像名字:版本号

docker images
docker ps

全部跟着打就好


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号