码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Dockerfile安装到项目发布全过程(详解)


    目录

    安装

     查看

    安装成功

    启动

    启动后使用docker ps查看正在运行的进程是否存在centos7 

     进入容器内部命令

     退出命令

    安装jdk

    首先进入有jdk的安装包的目录下,然后进行解压

    查看是否解压成功

    在home目录下创建DockerFile文件

    ①使用命令vi Dockerfile 进入编辑模式按下“i”

    填写之后同时按下esc+shift+:号,输入wq进行保存

    开启dockerfile

    此时会从从上至下下载解析 

    运行构建好的镜像

    此时可以进入容器内部使用java,java -version命令测试是否成功

    发布一个springboot项目

    ①创建一个controller层随便写两句测试代码

    ②打包一个springboot项目

    ③在resource目录下建立一个Dockerfile文件,配置信息 

    上传项目

    1.idea链接服务器远程主机

    2.侧边栏出现服务器目录,将jar包和dockerfile文件拖入home目录下

     3.进入local目录构建项目容器

    运行镜像

    访问端口


    安装

    docker pull centos:centos7
    

     查看

    docker images
    

    安装成功

    启动

     docker run -itd --name centos-test centos:centos7

    启动后使用docker ps查看正在运行的进程是否存在centos7 

     进入容器内部命令

    1. #dcd817883b1c是容器id
    2. docker exec -it dcd817883b1c /bin/bash

     退出命令

    exit;

    安装jdk

    首先进入有jdk的安装包的目录下,然后进行解压

    tar -zxvf jdk-8u221-linux-x64.tar.gz 
    

     

    查看是否解压成功

    在home目录下创建DockerFile文件

    ①使用命令vi Dockerfile 进入编辑模式按下“i”

    1. #继承哪一个基础的镜像
    2. FROM centos:centos7
    3. #作者信息 后面的邮箱填写自己的
    4. MAINTAINER xiaoqiu<2732339835@qq.com>
    5. #容器构建时需要运行指令
    6. RUN yum -y install vim*
    7. #安装netstat指令
    8. RUN yum -y install net-tools
    9. #配置环境参数(定义的时候不要加$,引用的时候加)
    10. ENV MYPATH /usr/local
    11. #切换目录
    12. WORKDIR $MYPATH
    13. #安装jdk(将宿主机的文件添加到容器)
    14. ADD jdk-8u221-linux-x64.tar.gz /usr/local/
    15. #配置jdk环境变量
    16. ENV JAVA_HOME /usr/local/jdk1.8.0_221
    17. ENV CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
    18. ENV PATH=$PATH:${JAVA_HOME}/bin
    19. #暴露端口
    20. EXPOSE 80
    21. #启动centos
    22. CMD /bin/bash

    填写之后同时按下esc+shift+:号,输入wq进行保存

    开启dockerfile

    docker build -f Dockerfile -t mycentos:1.0 . 

    此时会从从上至下下载解析 

    运行构建好的镜像

    docker run -itd --name centos-test mycentos:1.0
    

    此时可以进入容器内部使用java,java -version命令测试是否成功

    java命令可使用证明没有问题

     

    发布一个springboot项目

    ①创建一个controller层随便写两句测试代码

    ②打包一个springboot项目

    先点击clean--package

    出现target目录里面包含一个jar包,表示打包成功,把ja拖入resource目录下与Dockerfile文件同级

    ③在resource目录下建立一个Dockerfile文件,配置信息 

     
    

    上传项目

    1.idea链接服务器远程主机

     

    2.侧边栏出现服务器目录,将jar包和dockerfile文件拖入home目录下

     工具--ssh会话--选择刚刚添加的服务器信息可实现在idea操控服务器

     3.进入local目录构建项目容器

     docker build -f Dockerfile -t jenkinstest:1.0 .
    

    运行镜像

     docker run --name jenkinstest -p 8081:8081 -d jenkinstest:1.0
    

    访问端口

  • 相关阅读:
    vue2中vuex的用法
    list(链表)
    【缓存】OS层面缓存设计机制
    小型数据库系统开发作业
    spring mvc:请求执行流程(一)之获取Handler
    PID控制电机输出作为电机PWM占空比输入的理解
    Android:UI:Drawable:View/ImageView与Drawable
    系统升级丨VR会议主动呼叫,开启云洽谈新模式
    【计网实验】选择重发 ARQ 算法模拟
    MySQL之MHA高可用配置及故障
  • 原文地址:https://blog.csdn.net/lu__lala/article/details/125606608
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号