当前位置: 首页 > news >正文

利用Docker容器技术部署发布web应用程序

Docker是什么?

docker 是一个开源的应用容器引擎,可以帮助开发者打包应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。简而言之,就是可以在任何Linux镜像上使用的这么一个技术

 

Docker容器的组成

docker有三大部分组成:

1.仓库:仓库里有镜像(image),这个镜像就是具体服务器的镜像,比如mysql,这个很好理解,类似于装系统的系统镜像。仓库有共有的仓库和私有仓库

2.服务器:有了镜像,我们需要运行镜像里的应用,就需要在服务器中创建容器(container)来给镜像运行,每个容器都独立运行。容器可以启动、删除、停止。容器就是一个微型的linux系统,给应用运行的环境。

3.客户端:然后有了容器,容器里有了镜像后,就可以通过客户端来启动和管理容器。

 

Docker容器的安装

1.移除旧版本,如果linux上有旧docker镜像,这条命令会卸载掉

sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine

注意,这条指令会删除历史的所有数据

rm -rf /var/lib/docker

2.安装一些必要的系统工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

 

3.添加docker软件源信息

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4.更新yum缓存

sudo yum makecache fast

5.安装最新的docker-ce

sudo yum -y install docker-ce

安装指定版本

sudo  yum install -y docker-ce-18.09.7 docker-ce-cli-18.09.7 containerd.io

6.启动docker后台服务

sudo systemctl start docker
// 设置开机自启
sudo systemctl enable docker

查看版本

docker -v

Docker里安装依赖环境

先pull一个Tomcat

docker pull tomcat:8.0

启动tomcat

docker run --name my_tomcat -it -d -p [docker容器映射端口]:[tomcate端口] 镜像id

浏览器访问成功

b97eea944ac6d49f74b0707029ae47c2.png

 再安装JDK

docker pull java:8

安装mysql

docker pull mysql:8

进入tomcat 部署项目

docker exec -it 镜像id bash

把项目war包上传到webapps目录下,然后reboot 重启服务器

浏览器访问 公网ip+端口+项目地址,访问成功

06e61921c804da5505e42ebe1b7d9170.png

 

 

 

 

 

 

 

http://www.lryc.cn/news/490444.html

相关文章:

  • [免费]SpringBoot+Vue毕业设计论文管理系统【论文+源码+SQL脚本】
  • BFS 算法专题(五):BFS 解决拓扑排序
  • 【Mysql】开窗聚合函数----SUM,AVG, MIN,MAX
  • java操作doc——java利用Aspose.Words操作Word文档并动态设置单元格合并
  • 探索 .NET 9 控制台应用中的 LiteDB 异步 CRUD 操作
  • 《进程隔离机制:C++多进程编程安全的坚固堡垒》
  • 构建无障碍的数字世界:深入探讨Web可访问性指南
  • 跨境出海安全:如何防止PayPal账户被风控?
  • 学习日记_20241123_聚类方法(MeanShift)
  • AI编程和AI绘画哪个更适合创业?
  • macOS 无法安装第三方app,启用任何来源的方法
  • 关于SpringBoot集成Kafka
  • 4.STM32之通信接口《精讲》之IIC通信---软件实现IIC《深入浅出》面试必备!
  • 6G通信技术对比5G有哪些不同?
  • 「Mac玩转仓颉内测版28」基础篇8 - 元组类型详解
  • WebStorm 2024.3/IntelliJ IDEA 2024.3出现elementUI提示未知 HTML 标记、组件引用爆红等问题处理
  • 机械设计学习资料
  • Python 快速入门(上篇)❖ Python 字符串
  • Ubuntu中使用多版本的GCC
  • 1+X应急响应(网络)文件包含漏洞:
  • 机器学习实战记录(1)
  • PHP8解析php技术10个新特性
  • C++模版特化和偏特化
  • Simulink中Model模块的模型保护功能
  • Linux常用工具的使用(2):文本编辑器的使用
  • 【StarRocks】starrocks 3.2.12 【share-nothing】 多Be集群容器化部署
  • 联想ThinkServer服务器主要硬件驱动下载
  • Ansys Zemax Optical Studio 中的近视眼及矫正
  • 三次握手后的数据传输
  • 企业OA管理系统:Spring Boot技术实现与案例研究