网站首页 > 精选教程 正文
试验目的:方便开发者搭建一个基于docker的java Web服务器环境
最近想我们的应用需要更新维护,Android、IOS、还有服务器端都要更新,都在忙于写代码没有写文章了。我们的服务器是用java ssh架构的,到时也打算切换成Spring MVC+oauth2,今天有空,就把之前搞的搭建服务器环境的给大家看看,研究一下了,如果写得不好,欢迎吐槽。哈哈
Docker经常看到,有很多没有接触过的开发者都很想了解一下,究竟这个是什么来,我需不需要学?带着疑问,我一一为大家解答一下。
1、Docker是一个基于是基于应用层的一个服务软件,目前它是用于搭建服务器开发用的,学习android\IOS开发的用不上,当然不排除以后可以用在手机上,所以你要学习一下也没有问题。毕竟有很多人都是各种平台都接触的,因为本身我也是这样。
2、docker是一个软件,透过Docker,我们可以运行不同的容器环境,就是类似我们平时的虚拟机一样,如vmware、virtual box,这些虚拟机软件,可以在操作系统上安装,然后可以让我们搭建出不同的操作系统,那既然有了虚拟机软件,为什么要用docker呢?有很多原因,对于我们开发者而言,我们的答案基本是统一的,我可以在服务器快速搭建出生产环境,并且快速的复制到其他的服务器。下图是我把Docker的原理画了出来。
3、Docker 是扩展了 Linux 容器(Linux Containers),而LXC提供了一套统一的API和工具来建立和管理container,这样Docker可以利用这些高级API提供了一个轻量级的虚拟环境。一个 Docker 容器并不是像虚拟机那样独立占用一个单独的操作系统,而是基于已有的基础设施中操作系统提供的功能来运行的,比如有100个容器,它们彼此之间是利用同一个操作系统的内核的。
接着我们如何安装环境,
安装Docker
根据我刚才分析的,其实就是安装软件。由于不同的操作系统可能会有点不一样,这个大家可以自行找一下资料,我这个是Ubuntu系统的,对了,还有注意是Linux操作系统要64位的而且还有要注意的是Docker需要在Linux Kernel 3.8及以上
$ sudo apt-get update$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ sudo sed -i '$acomplete -F _docker docker' /etc/bash_completion.d/docker.io
Docker的一些指令
查看版本信息
docker version
获取镜像
docker pull ubuntu:latest
查看本地镜像
docker images
查看镜像运行情况
docker images ubuntu
在容器下运行 shell bash
docker run -i -t ubuntu /bin/bash
停止容器
docker stop <容器ID>
下载镜像
镜像我们可以到官网看看有哪些镜像
https://hub.docker.com/explore/
我这里以ubuntu为例,pull代表下载,ubuntu表示镜像,“:latest”表示最后一个版本,其实就是最新的版本。
docker pull ubuntu:latest
不得不说,下载超级慢,有时可能也下载不了的,我也是折腾了一个下午才搞定的,解决办法可以通过建立私有库,docker registry
具体网址:
https://github.com/docker/docker-registry
这里暂时就不作介绍了。大家可以自行研究
安装好后,输入:docker images就知道有没有下载到本地了。如下图
启动容器
加入shell,输入如下命令
docker run -i -t ubuntu:latest /bin/bash
这时看到控制台的已经换成容器的命令行了。这样我们就可以安装我们的环境了。
docker ps –a列出所有的容器,包括已经退出的
退出容器
进入容器后,里面的操作都是新的操作,我们要退出直接输入 exit
这一节就说到这里,由于设计到安装环境和部署所以分到下一节再说,欢迎关注我的头条号:一点热
猜你喜欢
- 2025-03-19 用Ansible从零开始部署Spring Boot Web应用:全栈自动化部署指南
- 2025-03-19 瑞芯微RK3568|SDK开发之环境安装及编译操作
- 2025-03-19 从0开始,让你的Spring Boot项目跑在Linux服务器
- 2025-03-19 Jenkins 部署运行(jenkins怎么部署环境)
- 2025-03-19 K8S环境快速部署Kafka(K8S外部可访问)
- 2025-03-19 开源文档预览项目 kkFileView (9.9k star) ,快速入门
- 2025-03-19 如何安装一个专业版的linux(如何安装linux软件)
- 2025-03-19 用了8年的方式-用 Docker 瞬间搭建本地开发环境
- 2025-03-19 本地Ubuntu轻松部署高效性能监控平台SigNoz与远程使用教程
- 2025-03-19 基于Ubuntu16.04使用KVM实现Linux环境虚拟机化
你 发表评论:
欢迎- 04-11Java面试“字符串三兄弟”String、StringBuilder、StringBuffer
- 04-11Java中你知道几种从字符串中找指定的字符的数量
- 04-11探秘Java面试中问的最多的String、StringBuffer、StringBuilder
- 04-11Python字符串详解与示例(python字符串的常见操作)
- 04-11java正则-取出指定字符串之间的内容
- 04-11String s1 = new String("abc");这句话创建了几个字符串对象?
- 04-11java判断字符串中是否包含某个字符
- 04-11关于java开发中正确的发牌逻辑编写规范
- 最近发表
-
- Java面试“字符串三兄弟”String、StringBuilder、StringBuffer
- Java中你知道几种从字符串中找指定的字符的数量
- 探秘Java面试中问的最多的String、StringBuffer、StringBuilder
- Python字符串详解与示例(python字符串的常见操作)
- java正则-取出指定字符串之间的内容
- String s1 = new String("abc");这句话创建了几个字符串对象?
- java判断字符串中是否包含某个字符
- 关于java开发中正确的发牌逻辑编写规范
- windows、linux如何后台运行jar(并且显示进程名)
- 腾讯大佬私人收藏,GitHub上最受欢迎的100个JAVA库,值得学习
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)