CentOS下Docker安装和centos+jdk镜像构建与jar包在镜像中启动


1.使用安装包安装(CentOS 7下)

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。

通过 uname -r 命令查看你当前的内核版本

[root@runoob ~]# uname -r 3.10.0-327.el7.x86_64

2.安装 Docker

进入/work目录下载安装包:

[root@localhost work]#wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

将安装包放入centos的/work目录下。

[root@localhost work]# sudoyum install docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

 

3.启动 Docker 后台服务

[root@runoob ~]# service docker start

 

 

 

 

 

 

4.配置阿里加速docker下载镜像(可以加快pull镜像下载)

如何配置镜像加速器

针对Docker客户端版本大于1.10.0的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器:
[root@runoob ~]#sudo mkdir -p /etc/docker
[root@runoob ~]#sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://g2gnglof.mirror.aliyuncs.com"]
}
EOF
[root@runoob ~]#sudo systemctl daemon-reload
[root@runoob ~]#sudo systemctl restart docker

5. docker安装镜像centos

安装centos系统的镜像

#docker pull centos

这样不指定centos的版本,会安装最新版本centos。

 

 

6.构建Docker centos+jdk8的镜像文件

6.1准备jdk8安装包

·        创建工作目录, #mkdir /work

·        在工作目录中创建目录用于操作镜像

·        #cd /work

·        #mkdirdockerimage

·        准备下载jdk8的tar.gz包 http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz

·        把压缩文件解压到目录/work/dockerimage 下面

[root@localhost dockerimage]#tar -xzvf jdk-8u151-linux-x64.tar.gz

进入/work/dockerimage目录, 在当前目录下创建Dockerfile文件

#cd/work/dockerimage
#vi Dockerfile

把下面内容粘贴进去

 

#使用的基础镜像

FROM  centos

#作者信息

MAINTAINER  ZhangXianJie "xj_zh@foxmail.com"

#在镜像中创建目录

RUN mkdir -p/work/java/jdk1.8.0_151

#把下载解压的jdk我的在当前目录下,添加到镜像指定文件夹

ADD jdk1.8.0_151/work/java/jdk1.8.0_151

#添加环境变量

ENV JAVA_HOME/work/java/jdk1.8.0_151

 

ENV PATH$PATH:$JAVA_HOME/bin

#暴露8080端口

EXPOSE 8080

EXPOSE 80

 

 

6.2开始构建docker镜像文件

[root@localhost dockerimage]#docker build -t repos_local/centos-jdk8:0.0.1.
-t 设置tag名称, 命名规则registry/image:tag
.
表示使用当前目录下的Dockerfile文件 --这个点很重要不要漏了

版本号自定义为0.0.1

等待构建完成, 不出意外的话, 执行docker images将会得到以下结果

[root@localhostdockerimage]# docker images

REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE

repos_local/centos-jdk8   0.0.1               1fefd2abe1ce        45 seconds ago      581MB //这个是新构建的

centos                    latest              d123f4e55e12        2 weeks ago         197MB//这个是准备好的镜像是pull下来的

 

repos_local/centos-jdk8镜像已经构建好了。

 

6.3进入镜像对话窗口

[root@localhostdockerimage]# docker run -i -t repos_local/centos-jdk8:0.0.1 /bin/bash

[root@6db41ee12fd6 /]#             

退出docker

[root@6db41ee12fd6 /]# exit

exit

repos_local这个是存放目录,可以在 运行dock images 的REPOSITORY看到。

6.4准备jar文件

·        打包spring boot jar文件。

·        生成 algo-algorithms-boot-0.0.1-SNAPSHOT.jar 文件。

·        将生成的jar文件,放入linux系统的/work/目录

 

6.5 将主机jar包导入容器

查看docker的id(docker运行状态下才可以看到,可以在一个终端进入容器,再打开另一个终端执行一下命令)

[root@localhost dockerimage]# docker ps

CONTAINERID       IMAGE                          COMMAND             CREATED             STATUS              PORTS               NAMES

9f4b8e8b79c2       repos_local/centos-jdk8:0.0.1  "/bin/bash"         27seconds ago      Up 27 seconds       80/tcp, 8080/tcp    stupefied_nightingale                           

红色是ID

[root@localhost ~]#docker cp /work/algo-algorithms-boot-0.0.1-SNAPSHOT.jar 9f4b8e8b79c2:/work/

在主机终端下复制jar包到容器,红色部分是容器的ID

 

6.6启动jar包

·        进入镜像

·        [root@localhostdockerimage]# docker run -i -t repos_local/centos-jdk8:0.0.1 /bin/bash

·        [root@9f4b8e8b79c2work]#

·        进入镜像系统的 /work 文件夹

·        这个时候/work目录中被包含在镜像中的jar文件已经存在了。

·        cd/work

[root@9f4b8e8b79c2work]# java -jar algo-algorithms-boot-0.0.1-SNAPSHOT.jar 

 启动成功

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值