Docker环境安装以及利用Docker生成jar包镜像

VMware下载安装

参考地址:VMware下载安装

CentOS7系统安装

参考地址:CentOS7系统安装

Docker安装(保证虚拟机可以访问外网)

官网安装参考手册:官网安装

确定你是CentOS7及以上版本

[root@192 Desktop]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

yum安装gcc相关(需要确保 虚拟机可以上外网 )

yum -y install gcc
yum -y install gcc-c++

卸载旧版本

yum -y remove docker docker-common docker-selinux docker-engine

官网版本

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

安装需要的软件包

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

设置stable镜像仓库

# 错误
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
## 报错
[Errno 14] curl#35 - TCP connection reset by peer
[Errno 12] curl#35 - Timeout

# 正确推荐使用国内的
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

问题记录:yum-config-manager命令找不到:

这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里,可以通过命令yum -y install yum-utils 安装就可以了

更新yum软件包索引

yum makecache fast

安装Docker CE

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

启动docker

systemctl start docker

测试

docker version

docker run hello-world

docker images

截止到这里,docker的安装就已经完成了,接下来是jar包的镜像生成

编写DockerFile文件

为了便于管理,我们应该新建一个专门存放对应业务jar包(以及其依赖的jar)的文件夹,我们的所有工作都在该文件夹下进行。

我在home目录下新建busnessService文件夹,将我需要生成镜像的jar包和lib文件夹(里面是业务包依赖的jar)放置在该文件夹下。

DockerFile文件

1.新建DockerFile文件
2.编辑内容如下:

# 基于哪个镜像

FROM java:8

# 将文件挂载到当前容器

VOLUME /tmp

# 复制文件到容器根目录"/",并且命名为app.jar(yourServiceName为你的代码打包成的jar包名称,youNeedJarName为重命名的jar名称,lib为依赖jar)

ADD yourServiceName.jar  /youNeedJarName.jar
ADD lib /lib
# 声明需要暴露的端口

EXPOSE 9001

# 配置容器启动后执行的命令,java -jar /app.jar

#ENTRYPOINT ["java","-Xmx4g","-Xms4g","-jar","/youNeedJarName.jar", "--spring.profiles.active=test"]

3.编辑完成后保存

镜像生成

1.构建生成镜像

#生成镜像(yourImageName为生成的镜像名称)
#第一次执行比较慢,因为要从java:8镜像下载东西
docker build -t yourImageName:1.0.0 .

2.压缩保存

#将你的镜像文件(yourImageName)压缩并保存为名称是yourImageTarName的tar文件
docker save -o yourImageTarName.tar yourImageName:1.0.0
验证

查看你的busnessService文件夹下内容,会发现多出一个yourImageTarName.tar,这个就是你生成并压缩后的镜像文件了。

参考

https://www.cnblogs.com/yanl55555/p/13438328.html
https://blog.csdn.net/rcjjian/article/details/79283824
https://www.cnblogs.com/zhmiao/p/11864920.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值