抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

说明

介绍一下,就我个人而言,docker,就是一个虚拟机。大家平时在使用vm等虚拟机,创建linux系统,然后再在这个系统里边安装各种运行项目所需的环境,最后打包项目,启动项目。docker跟这个大同小异,不知道我的感觉对不对,你可以在虚拟机上创建多个linux系统,创建过程中你需要对其分盘,创建密码等等一些列操作,而docker就是可以创建多个容器。你在你的服务器上需要安装mysql,jdk等环境,同样docker容器也需要!但最关键的区别在于——一台新的服务器,你需要重新安装新的环境,项目也需要重新打包,而docker不用,你可以把之前的容器创建为新的镜像,在新的服务器,安装docker,再运行这个镜像就OK了!

设想,你公司的项目做好了,接下来就是给甲方大大去部署这个项目,而你甲方大大只会给你提供一台服务器,而你去了他们公司,只需要拿着你的镜像,给他服务器安装一个docker,运行就ok了,是不是非常省事呢?哦~具体我也不太清楚,方案b就是,你把你的容器生成镜像后,推送到远端,然后从远端拉取镜像,而这个也绝对是可以实现的。

实例

好了进入正题——以一个boot项目为列子。

1.将打包好的jar包,上传到服务器下,

2.安装docker,在contos7下,并启动

sudo yum -y install docker-ce
sudo systemctl start docker

3.在刚刚gbq这个文件下,也就是和jar包的相同位置,创建Dockerfile文件夹,编辑

FROM azul/zulu-openjdk:8
VOLUME /gbq
ADD docker_test.jar app.jar
RUN bash -c ‘touch /app.jar’
ENTRYPOINT [“java”,"-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

dockerFile详解 具体可以看这个

镜像迁移

4.生成镜像,注意:空格 . 不可省略

sudo docker build -t springbootdemo .//生成一个叫springbootdemo的镜像
docker images //查看你已有镜像

5.使用容器启动这个镜像

sudo docker run -d -p 8080:8082 springbootdemo // 8080:代理8082 8082:springboot项目端口
docker ps //查看正在运行的容器
docker ps -a //查看所有容器

好了,使用docker启动项目成功。看一下效果,跟linux 后台启动jar包是一个效果

为了更好地查看,我也给大家看一下我服务器的ip(内网,各位访问不了)

项目启动成功了,接下来,我给大家把这个服务器下的运行docker容器,保存为一个新的镜像,再另外一个服务器,启动并且能够访问!

7.先把这个容器停下来

docker stop fe0ca055a52d //后边是你的容器id 通过docker ps查看,如下图

8.将容器转换为一个新的镜像

docker commit fe0ca055a52d bootdemo //fe0ca055a52d 容器id bootdemo 新的镜像名称
docker images //查看是否生成了新的镜像,如下图.

9.把这个镜像保存为一个tar格式文件

docker save -o test.tar bootdemo //test.tar 新生成的文件 bootdemo刚才创建镜像名
ls //可以看到生成了 test.tar文件

10.把test.tar复制到另外一个安装有docker的服务器下,安装过程请参考第2步,如下图

11.加载这个镜像

docker load -i test.tar
docker images //查看镜像是否加载成功 如下图

12.运行这个镜像

sudo docker run -d -p 8081:8082 bootdemo // 8081:代理8082 8082:springboot项目端口
docker ps //查看正在运行的容器
https://imgconvert.csdnimg.cn/aHR0cDovL3N0YXRpYy56dWlkYWltYS5jb20vaW1hZ2VzLzI0MDMwOC8yMDE5MDgvMjAxOTA4MjkxNjIxMzg2NTcucG5n?x-oss-process=image/format,png

至此结束,我也是刚刚研究,所以有大牛觉得不对的地方,请指点!另外还是那句话,有问题群里找我,加我q,都可以。

拜拜!

评论